Revert "cease your shitcode: cum edition"

This commit is contained in:
silicons
2020-08-16 19:06:57 -07:00
committed by GitHub
parent 3b2d93dcce
commit 4cd731ce11
59 changed files with 512 additions and 369 deletions
+1 -1
View File
@@ -8,5 +8,5 @@
GLOBAL_LIST_INIT(blacklisted_pool_reagents, list( GLOBAL_LIST_INIT(blacklisted_pool_reagents, list(
/datum/reagent/toxin/plasma, /datum/reagent/oxygen, /datum/reagent/nitrous_oxide, /datum/reagent/nitrogen, //gases /datum/reagent/toxin/plasma, /datum/reagent/oxygen, /datum/reagent/nitrous_oxide, /datum/reagent/nitrogen, //gases
/datum/reagent/fermi, //blanket fermichem ban sorry. this also covers mkultra, genital enlargers, etc etc. /datum/reagent/fermi, //blanket fermichem ban sorry. this also covers mkultra, genital enlargers, etc etc.
/datum/reagent/consumable/semen //NO. /datum/reagent/consumable/femcum, /datum/reagent/consumable/semen //NO.
)) ))
+4 -4
View File
@@ -37,10 +37,10 @@
//CIT CHANGES START HERE, ADDS SNOWFLAKE BODYPARTS AND MORE //CIT CHANGES START HERE, ADDS SNOWFLAKE BODYPARTS AND MORE
//mammal bodyparts (fucking furries) //mammal bodyparts (fucking furries)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/mam_tails, GLOB.mam_tails_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, GLOB.mam_tails_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ears/mam_ears, GLOB.mam_ears_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, GLOB.mam_ears_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts/mam_snouts, GLOB.mam_snouts_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_snouts, GLOB.mam_snouts_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/mam_tails_animated, GLOB.mam_tails_animated_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails_animated, GLOB.mam_tails_animated_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/taur, GLOB.taur_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/taur, GLOB.taur_list)
//xeno parts (hiss?) //xeno parts (hiss?)
init_sprite_accessory_subtypes(/datum/sprite_accessory/xeno_head, GLOB.xeno_head_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/xeno_head, GLOB.xeno_head_list)
+7 -7
View File
@@ -93,16 +93,16 @@
if(!GLOB.mam_body_markings_list.len) if(!GLOB.mam_body_markings_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list)
if(!GLOB.mam_tails_list.len) if(!GLOB.mam_tails_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/mam_tails, GLOB.mam_tails_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, GLOB.mam_tails_list)
if(!GLOB.mam_ears_list.len) if(!GLOB.mam_ears_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ears/mam_ears, GLOB.mam_ears_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, GLOB.mam_ears_list)
if(!GLOB.mam_snouts_list.len) if(!GLOB.mam_snouts_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts/mam_snouts, GLOB.mam_snouts_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_snouts, GLOB.mam_snouts_list)
//snowflake check so people's ckey features don't get randomly put on unmonkeys/spawns //snowflake check so people's ckey features don't get randomly put on unmonkeys/spawns
var/list/snowflake_mam_tails_list = list() var/list/snowflake_mam_tails_list = list()
for(var/mtpath in GLOB.mam_tails_list) for(var/mtpath in GLOB.mam_tails_list)
var/datum/sprite_accessory/tails/mam_tails/instance = GLOB.mam_tails_list[mtpath] var/datum/sprite_accessory/mam_tails/instance = GLOB.mam_tails_list[mtpath]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies))
@@ -120,7 +120,7 @@
snowflake_markings_list[S.name] = mmpath snowflake_markings_list[S.name] = mmpath
var/list/snowflake_ears_list = list() var/list/snowflake_ears_list = list()
for(var/mepath in GLOB.mam_ears_list) for(var/mepath in GLOB.mam_ears_list)
var/datum/sprite_accessory/ears/mam_ears/instance = GLOB.mam_ears_list[mepath] var/datum/sprite_accessory/mam_ears/instance = GLOB.mam_ears_list[mepath]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies))
@@ -129,7 +129,7 @@
snowflake_ears_list[S.name] = mepath snowflake_ears_list[S.name] = mepath
var/list/snowflake_mam_snouts_list = list() var/list/snowflake_mam_snouts_list = list()
for(var/mspath in GLOB.mam_snouts_list) for(var/mspath in GLOB.mam_snouts_list)
var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.mam_snouts_list[mspath] var/datum/sprite_accessory/mam_snouts/instance = GLOB.mam_snouts_list[mspath]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies))
@@ -138,7 +138,7 @@
snowflake_mam_snouts_list[S.name] = mspath snowflake_mam_snouts_list[S.name] = mspath
var/list/snowflake_ipc_antenna_list = list() var/list/snowflake_ipc_antenna_list = list()
for(var/mspath in GLOB.ipc_antennas_list) for(var/mspath in GLOB.ipc_antennas_list)
var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.ipc_antennas_list[mspath] var/datum/sprite_accessory/mam_snouts/instance = GLOB.ipc_antennas_list[mspath]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies))
-35
View File
@@ -40,41 +40,6 @@ GLOBAL_LIST_EMPTY(insect_fluffs_list)
GLOBAL_LIST_EMPTY(insect_markings_list) GLOBAL_LIST_EMPTY(insect_markings_list)
GLOBAL_LIST_EMPTY(caps_list) GLOBAL_LIST_EMPTY(caps_list)
//a way to index the right bodypart list given the type of bodypart
GLOBAL_LIST_INIT(mutant_reference_list, list(
"tail_lizard" = GLOB.tails_list_lizard,
"waggingtail_lizard" = GLOB.animated_tails_list_lizard,
"tail_human" = GLOB.tails_list_human,
"waggingtail_human" = GLOB.animated_tails_list_human,
"spines" = GLOB.spines_list,
"waggingspines" = GLOB.animated_spines_list,
"snout" = GLOB.snouts_list,
"frills" = GLOB.frills_list,
"horns" = GLOB.horns_list,
"ears" = GLOB.ears_list,
"body_markings" = GLOB.body_markings_list,
"wings" = GLOB.wings_list,
"wingsopen" = GLOB.wings_open_list,
"deco_wings" = GLOB.deco_wings_list,
"legs" = GLOB.legs_list,
"insect_wings" = GLOB.insect_wings_list,
"insect_fluff" = GLOB.insect_fluffs_list,
"insect_markings" = GLOB.insect_markings_list,
"caps" = GLOB.caps_list,
"ipc_screen" = GLOB.ipc_screens_list,
"ipc_antenna" = GLOB.ipc_antennas_list,
"mam_tail" = GLOB.mam_tails_list,
"mam_waggingtail" = GLOB.mam_tails_animated_list,
"mam_body_markings" = GLOB.mam_body_markings_list,
"mam_ears" = GLOB.mam_ears_list,
"mam_snouts" = GLOB.mam_snouts_list,
"taur" = GLOB.taur_list,
"xenodorsal" = GLOB.xeno_dorsal_list,
"xenohead" = GLOB.xeno_head_list,
"xenotail" = GLOB.xeno_tail_list))
GLOBAL_LIST_INIT(ghost_forms_with_directions_list, list("ghost")) //stores the ghost forms that support directional sprites GLOBAL_LIST_INIT(ghost_forms_with_directions_list, list("ghost")) //stores the ghost forms that support directional sprites
GLOBAL_LIST_INIT(ghost_forms_with_accessories_list, list("ghost")) //stores the ghost forms that support hair and other such things GLOBAL_LIST_INIT(ghost_forms_with_accessories_list, list("ghost")) //stores the ghost forms that support hair and other such things
@@ -31,3 +31,4 @@
/datum/symptom/inorganic_adaptation/OnRemove(datum/disease/advance/A) /datum/symptom/inorganic_adaptation/OnRemove(datum/disease/advance/A)
A.infectable_biotypes &= ~MOB_MINERAL A.infectable_biotypes &= ~MOB_MINERAL
+2 -2
View File
@@ -137,10 +137,10 @@
L[DNA_COLOR_TWO_BLOCK] = sanitize_hexcolor(features["mcolor2"], 6) L[DNA_COLOR_TWO_BLOCK] = sanitize_hexcolor(features["mcolor2"], 6)
L[DNA_COLOR_THREE_BLOCK] = sanitize_hexcolor(features["mcolor3"], 6) L[DNA_COLOR_THREE_BLOCK] = sanitize_hexcolor(features["mcolor3"], 6)
if(!GLOB.mam_tails_list.len) if(!GLOB.mam_tails_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/mam_tails, GLOB.mam_tails_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, GLOB.mam_tails_list)
L[DNA_MUTANTTAIL_BLOCK] = construct_block(GLOB.mam_tails_list.Find(features["mam_tail"]), GLOB.mam_tails_list.len) L[DNA_MUTANTTAIL_BLOCK] = construct_block(GLOB.mam_tails_list.Find(features["mam_tail"]), GLOB.mam_tails_list.len)
if(!GLOB.mam_ears_list.len) if(!GLOB.mam_ears_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ears/mam_ears, GLOB.mam_ears_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, GLOB.mam_ears_list)
L[DNA_MUTANTEAR_BLOCK] = construct_block(GLOB.mam_ears_list.Find(features["mam_ears"]), GLOB.mam_ears_list.len) L[DNA_MUTANTEAR_BLOCK] = construct_block(GLOB.mam_ears_list.Find(features["mam_ears"]), GLOB.mam_ears_list.len)
if(!GLOB.mam_body_markings_list.len) if(!GLOB.mam_body_markings_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list)
+1 -1
View File
@@ -6,5 +6,5 @@
zone = BODY_ZONE_PRECISE_GROIN zone = BODY_ZONE_PRECISE_GROIN
slot = ORGAN_SLOT_WOMB slot = ORGAN_SLOT_WOMB
genital_flags = GENITAL_INTERNAL|GENITAL_FUID_PRODUCTION genital_flags = GENITAL_INTERNAL|GENITAL_FUID_PRODUCTION
fluid_id = /datum/reagent/consumable/semen/femcum fluid_id = /datum/reagent/consumable/femcum
linked_organ_slot = ORGAN_SLOT_VAGINA linked_organ_slot = ORGAN_SLOT_VAGINA
+4 -4
View File
@@ -1636,7 +1636,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if("mam_tail") if("mam_tail")
var/list/snowflake_tails_list = list() var/list/snowflake_tails_list = list()
for(var/path in GLOB.mam_tails_list) for(var/path in GLOB.mam_tails_list)
var/datum/sprite_accessory/tails/mam_tails/instance = GLOB.mam_tails_list[path] var/datum/sprite_accessory/mam_tails/instance = GLOB.mam_tails_list[path]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id)) if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id))
@@ -1661,7 +1661,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if("snout") if("snout")
var/list/snowflake_snouts_list = list() var/list/snowflake_snouts_list = list()
for(var/path in GLOB.snouts_list) for(var/path in GLOB.snouts_list)
var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.snouts_list[path] var/datum/sprite_accessory/mam_snouts/instance = GLOB.snouts_list[path]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id)) if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id))
@@ -1678,7 +1678,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if("mam_snouts") if("mam_snouts")
var/list/snowflake_mam_snouts_list = list() var/list/snowflake_mam_snouts_list = list()
for(var/path in GLOB.mam_snouts_list) for(var/path in GLOB.mam_snouts_list)
var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.mam_snouts_list[path] var/datum/sprite_accessory/mam_snouts/instance = GLOB.mam_snouts_list[path]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id)) if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id))
@@ -1827,7 +1827,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if("mam_ears") if("mam_ears")
var/list/snowflake_ears_list = list() var/list/snowflake_ears_list = list()
for(var/path in GLOB.mam_ears_list) for(var/path in GLOB.mam_ears_list)
var/datum/sprite_accessory/ears/mam_ears/instance = GLOB.mam_ears_list[path] var/datum/sprite_accessory/mam_ears/instance = GLOB.mam_ears_list[path]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id)) if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id))
-1
View File
@@ -46,7 +46,6 @@
var/minimal_player_age = 0 var/minimal_player_age = 0
var/outfit = null var/outfit = null
var/plasma_outfit = null //the outfit given to plasmamen
var/exp_requirements = 0 var/exp_requirements = 0
@@ -12,7 +12,6 @@
exp_type = EXP_TYPE_CREW exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/atmos outfit = /datum/outfit/job/atmos
plasma_outfit = /datum/outfit/plasmaman/atmospherics
access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS, access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS,
ACCESS_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_ATMOSPHERICS, ACCESS_MINERAL_STOREROOM) ACCESS_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_ATMOSPHERICS, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -11,7 +11,6 @@
exp_type_department = EXP_TYPE_SERVICE // This is so the jobs menu can work properly exp_type_department = EXP_TYPE_SERVICE // This is so the jobs menu can work properly
outfit = /datum/outfit/job/bartender outfit = /datum/outfit/job/bartender
plasma_outfit = /datum/outfit/plasmaman/bar
access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_BAR, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_BAR, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -10,7 +10,6 @@
selection_color = "#bbe291" selection_color = "#bbe291"
outfit = /datum/outfit/job/botanist outfit = /datum/outfit/job/botanist
plasma_outfit = /datum/outfit/plasmaman/botany
access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_HYDROPONICS, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_HYDROPONICS, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -17,7 +17,6 @@
outfit = /datum/outfit/job/captain outfit = /datum/outfit/job/captain
plasma_outfit = /datum/outfit/plasmaman/captain
access = list() //See get_access() access = list() //See get_access()
minimal_access = list() //See get_access() minimal_access = list() //See get_access()
@@ -10,7 +10,6 @@
selection_color = "#ca8f55" selection_color = "#ca8f55"
outfit = /datum/outfit/job/cargo_tech outfit = /datum/outfit/job/cargo_tech
plasma_outfit = /datum/outfit/plasmaman/cargo
access = list(ACCESS_MAINT_TUNNELS, ACCESS_MAILSORTING, ACCESS_CARGO, ACCESS_CARGO_BOT, ACCESS_MINING, access = list(ACCESS_MAINT_TUNNELS, ACCESS_MAILSORTING, ACCESS_CARGO, ACCESS_CARGO_BOT, ACCESS_MINING,
ACCESS_MINING_STATION, ACCESS_MINERAL_STOREROOM) ACCESS_MINING_STATION, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -10,7 +10,6 @@
selection_color = "#dddddd" selection_color = "#dddddd"
outfit = /datum/outfit/job/chaplain outfit = /datum/outfit/job/chaplain
plasma_outfit = /datum/outfit/plasmaman/chaplain
access = list(ACCESS_MORGUE, ACCESS_CHAPEL_OFFICE, ACCESS_CREMATORIUM, ACCESS_THEATRE) access = list(ACCESS_MORGUE, ACCESS_CHAPEL_OFFICE, ACCESS_CREMATORIUM, ACCESS_THEATRE)
minimal_access = list(ACCESS_MORGUE, ACCESS_CHAPEL_OFFICE, ACCESS_CREMATORIUM, ACCESS_THEATRE) minimal_access = list(ACCESS_MORGUE, ACCESS_CHAPEL_OFFICE, ACCESS_CREMATORIUM, ACCESS_THEATRE)
-1
View File
@@ -12,7 +12,6 @@
exp_requirements = 60 exp_requirements = 60
outfit = /datum/outfit/job/chemist outfit = /datum/outfit/job/chemist
plasma_outfit = /datum/outfit/plasmaman/chemist
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CHEMISTRY, ACCESS_VIROLOGY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CHEMISTRY, ACCESS_VIROLOGY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_CHEMISTRY, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_CHEMISTRY, ACCESS_MINERAL_STOREROOM)
@@ -17,7 +17,6 @@
exp_type_department = EXP_TYPE_ENGINEERING exp_type_department = EXP_TYPE_ENGINEERING
outfit = /datum/outfit/job/ce outfit = /datum/outfit/job/ce
plasma_outfit = /datum/outfit/plasmaman/ce
access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS, access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS,
ACCESS_EXTERNAL_AIRLOCKS, ACCESS_ATMOSPHERICS, ACCESS_EVA, ACCESS_EXTERNAL_AIRLOCKS, ACCESS_ATMOSPHERICS, ACCESS_EVA,
@@ -17,7 +17,6 @@
exp_type_department = EXP_TYPE_MEDICAL exp_type_department = EXP_TYPE_MEDICAL
outfit = /datum/outfit/job/cmo outfit = /datum/outfit/job/cmo
plasma_outfit = /datum/outfit/plasmaman/cmo
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_HEADS, ACCESS_MINERAL_STOREROOM, access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_HEADS, ACCESS_MINERAL_STOREROOM,
ACCESS_CHEMISTRY, ACCESS_VIROLOGY, ACCESS_CMO, ACCESS_SURGERY, ACCESS_RC_ANNOUNCE, ACCESS_CHEMISTRY, ACCESS_VIROLOGY, ACCESS_CMO, ACCESS_SURGERY, ACCESS_RC_ANNOUNCE,
-1
View File
@@ -10,7 +10,6 @@
selection_color = "#dddddd" selection_color = "#dddddd"
outfit = /datum/outfit/job/clown outfit = /datum/outfit/job/clown
plasma_outfit = /datum/outfit/plasmaman/clown
access = list(ACCESS_THEATRE) access = list(ACCESS_THEATRE)
minimal_access = list(ACCESS_THEATRE) minimal_access = list(ACCESS_THEATRE)
-1
View File
@@ -11,7 +11,6 @@
var/cooks = 0 //Counts cooks amount var/cooks = 0 //Counts cooks amount
outfit = /datum/outfit/job/cook outfit = /datum/outfit/job/cook
plasma_outfit = /datum/outfit/plasmaman/chef
access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -10,7 +10,6 @@
selection_color = "#dddddd" selection_color = "#dddddd"
outfit = /datum/outfit/job/curator outfit = /datum/outfit/job/curator
plasma_outfit = /datum/outfit/plasmaman/curator
access = list(ACCESS_LIBRARY) access = list(ACCESS_LIBRARY)
minimal_access = list(ACCESS_LIBRARY, ACCESS_CONSTRUCTION, ACCESS_MINING_STATION) minimal_access = list(ACCESS_LIBRARY, ACCESS_CONSTRUCTION, ACCESS_MINING_STATION)
-1
View File
@@ -14,7 +14,6 @@
exp_type = EXP_TYPE_CREW exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/detective outfit = /datum/outfit/job/detective
plasma_outfit = /datum/outfit/plasmaman/detective
access = list(ACCESS_SEC_DOORS, ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_COURT, ACCESS_BRIG, ACCESS_WEAPONS, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_SEC_DOORS, ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_COURT, ACCESS_BRIG, ACCESS_WEAPONS, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_SEC_DOORS, ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_COURT, ACCESS_BRIG, ACCESS_WEAPONS, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_SEC_DOORS, ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_COURT, ACCESS_BRIG, ACCESS_WEAPONS, ACCESS_MINERAL_STOREROOM)
@@ -12,7 +12,6 @@
exp_requirements = 60 exp_requirements = 60
outfit = /datum/outfit/job/geneticist outfit = /datum/outfit/job/geneticist
plasma_outfit = /datum/outfit/plasmaman/genetics
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_CHEMISTRY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_ROBOTICS, ACCESS_MINERAL_STOREROOM, ACCESS_TECH_STORAGE) access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_CHEMISTRY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_ROBOTICS, ACCESS_MINERAL_STOREROOM, ACCESS_TECH_STORAGE)
minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM)
@@ -17,7 +17,6 @@
exp_type_department = EXP_TYPE_SERVICE exp_type_department = EXP_TYPE_SERVICE
outfit = /datum/outfit/job/hop outfit = /datum/outfit/job/hop
plasma_outfit = /datum/outfit/plasmaman/hop
access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_COURT, ACCESS_WEAPONS, access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_COURT, ACCESS_WEAPONS,
ACCESS_MEDICAL, ACCESS_ENGINE, ACCESS_CHANGE_IDS, ACCESS_AI_UPLOAD, ACCESS_EVA, ACCESS_HEADS, ACCESS_MEDICAL, ACCESS_ENGINE, ACCESS_CHANGE_IDS, ACCESS_AI_UPLOAD, ACCESS_EVA, ACCESS_HEADS,
@@ -17,8 +17,6 @@
exp_type_department = EXP_TYPE_SECURITY exp_type_department = EXP_TYPE_SECURITY
outfit = /datum/outfit/job/hos outfit = /datum/outfit/job/hos
plasma_outfit = /datum/outfit/plasmaman/hos
mind_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM) mind_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM)
access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP,
-1
View File
@@ -10,7 +10,6 @@
selection_color = "#bbe291" selection_color = "#bbe291"
outfit = /datum/outfit/job/janitor outfit = /datum/outfit/job/janitor
plasma_outfit = /datum/outfit/plasmaman/janitor
access = list(ACCESS_JANITOR, ACCESS_MAINT_TUNNELS, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_JANITOR, ACCESS_MAINT_TUNNELS, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_JANITOR, ACCESS_MAINT_TUNNELS, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_JANITOR, ACCESS_MAINT_TUNNELS, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -11,7 +11,6 @@
var/lawyers = 0 //Counts lawyer amount var/lawyers = 0 //Counts lawyer amount
outfit = /datum/outfit/job/lawyer outfit = /datum/outfit/job/lawyer
plasma_outfit = /datum/outfit/plasmaman/bar //yes, this is correct, there's no 'lawyer' plasmeme outfit
access = list(ACCESS_LAWYER, ACCESS_COURT, ACCESS_SEC_DOORS) access = list(ACCESS_LAWYER, ACCESS_COURT, ACCESS_SEC_DOORS)
minimal_access = list(ACCESS_LAWYER, ACCESS_COURT, ACCESS_SEC_DOORS) minimal_access = list(ACCESS_LAWYER, ACCESS_COURT, ACCESS_SEC_DOORS)
@@ -10,7 +10,6 @@
selection_color = "#74b5e0" selection_color = "#74b5e0"
outfit = /datum/outfit/job/doctor outfit = /datum/outfit/job/doctor
plasma_outfit = /datum/outfit/plasmaman/medical
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CHEMISTRY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_VIROLOGY, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CHEMISTRY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_VIROLOGY, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CLONING, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CLONING, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -10,7 +10,6 @@
selection_color = "#dddddd" selection_color = "#dddddd"
outfit = /datum/outfit/job/mime outfit = /datum/outfit/job/mime
plasma_outfit = /datum/outfit/plasmaman/mime
access = list(ACCESS_THEATRE) access = list(ACCESS_THEATRE)
minimal_access = list(ACCESS_THEATRE) minimal_access = list(ACCESS_THEATRE)
@@ -17,7 +17,6 @@
exp_type = EXP_TYPE_CREW exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/rd outfit = /datum/outfit/job/rd
plasma_outfit = /datum/outfit/plasmaman/rd
access = list(ACCESS_RD, ACCESS_HEADS, ACCESS_TOX, ACCESS_GENETICS, ACCESS_MORGUE, access = list(ACCESS_RD, ACCESS_HEADS, ACCESS_TOX, ACCESS_GENETICS, ACCESS_MORGUE,
ACCESS_TOX_STORAGE, ACCESS_TELEPORTER, ACCESS_SEC_DOORS, ACCESS_TOX_STORAGE, ACCESS_TELEPORTER, ACCESS_SEC_DOORS,
@@ -12,7 +12,6 @@
exp_type = EXP_TYPE_CREW exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/roboticist outfit = /datum/outfit/job/roboticist
plasma_outfit = /datum/outfit/plasmaman/robotics
access = list(ACCESS_ROBOTICS, ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_TECH_STORAGE, ACCESS_MORGUE, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM, ACCESS_XENOBIOLOGY, ACCESS_GENETICS) access = list(ACCESS_ROBOTICS, ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_TECH_STORAGE, ACCESS_MORGUE, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM, ACCESS_XENOBIOLOGY, ACCESS_GENETICS)
minimal_access = list(ACCESS_ROBOTICS, ACCESS_TECH_STORAGE, ACCESS_MORGUE, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_ROBOTICS, ACCESS_TECH_STORAGE, ACCESS_MORGUE, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -12,7 +12,6 @@
exp_type = EXP_TYPE_CREW exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/scientist outfit = /datum/outfit/job/scientist
plasma_outfit = /datum/outfit/plasmaman/science
access = list(ACCESS_ROBOTICS, ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_MINERAL_STOREROOM, ACCESS_TECH_STORAGE, ACCESS_GENETICS) access = list(ACCESS_ROBOTICS, ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_MINERAL_STOREROOM, ACCESS_TECH_STORAGE, ACCESS_GENETICS)
minimal_access = list(ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_MINERAL_STOREROOM)
@@ -14,7 +14,6 @@
exp_type = EXP_TYPE_CREW exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/security outfit = /datum/outfit/job/security
plasma_outfit = /datum/outfit/plasmaman/security
access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT, ACCESS_MAINT_TUNNELS, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_FORENSICS_LOCKERS, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT, ACCESS_MAINT_TUNNELS, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_FORENSICS_LOCKERS, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_MINERAL_STOREROOM) // See /datum/job/officer/get_access() minimal_access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_MINERAL_STOREROOM) // See /datum/job/officer/get_access()
@@ -12,7 +12,6 @@
outfit = /datum/outfit/job/miner outfit = /datum/outfit/job/miner
plasma_outfit = /datum/outfit/plasmaman/mining
access = list(ACCESS_MAINT_TUNNELS, ACCESS_MAILSORTING, ACCESS_CARGO, ACCESS_CARGO_BOT, ACCESS_MINING, access = list(ACCESS_MAINT_TUNNELS, ACCESS_MAILSORTING, ACCESS_CARGO, ACCESS_CARGO_BOT, ACCESS_MINING,
ACCESS_MINING_STATION, ACCESS_MINERAL_STOREROOM) ACCESS_MINING_STATION, ACCESS_MINERAL_STOREROOM)
@@ -12,7 +12,6 @@
exp_type = EXP_TYPE_CREW exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/engineer outfit = /datum/outfit/job/engineer
plasma_outfit = /datum/outfit/plasmaman/engineering
access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS, access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS,
ACCESS_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_ATMOSPHERICS, ACCESS_TCOMSAT, ACCESS_MINERAL_STOREROOM) ACCESS_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_ATMOSPHERICS, ACCESS_TCOMSAT, ACCESS_MINERAL_STOREROOM)
@@ -12,7 +12,6 @@
exp_requirements = 60 exp_requirements = 60
outfit = /datum/outfit/job/virologist outfit = /datum/outfit/job/virologist
plasma_outfit = /datum/outfit/plasmaman/viro
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CHEMISTRY, ACCESS_VIROLOGY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CHEMISTRY, ACCESS_VIROLOGY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_MEDICAL, ACCESS_VIROLOGY, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_MEDICAL, ACCESS_VIROLOGY, ACCESS_MINERAL_STOREROOM)
-1
View File
@@ -14,7 +14,6 @@
exp_type = EXP_TYPE_CREW exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/warden outfit = /datum/outfit/job/warden
plasma_outfit = /datum/outfit/plasmaman/warden
access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_MAINT_TUNNELS, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_FORENSICS_LOCKERS, ACCESS_MINERAL_STOREROOM) access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_MAINT_TUNNELS, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_FORENSICS_LOCKERS, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_MINERAL_STOREROOM) // See /datum/job/warden/get_access() minimal_access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_MINERAL_STOREROOM) // See /datum/job/warden/get_access()
@@ -1,9 +1,9 @@
/datum/sprite_accessory/tails/mam_tails/shark/datashark /datum/sprite_accessory/mam_tails/shark/datashark
name = "DataShark" name = "DataShark"
icon_state = "datashark" icon_state = "datashark"
ckeys_allowed = list("rubyflamewing") ckeys_allowed = list("rubyflamewing")
/datum/sprite_accessory/tails_animated/mam_tails_animated/shark/datashark /datum/sprite_accessory/mam_tails_animated/shark/datashark
name = "DataShark" name = "DataShark"
icon_state = "datashark" icon_state = "datashark"
ckeys_allowed = list("rubyflamewing") ckeys_allowed = list("rubyflamewing")
@@ -14,19 +14,19 @@
ckeys_allowed = list("rubyflamewing") ckeys_allowed = list("rubyflamewing")
//Sabresune //Sabresune
/datum/sprite_accessory/ears/mam_ears/sabresune /datum/sprite_accessory/mam_ears/sabresune
name = "Sabresune" name = "Sabresune"
icon_state = "sabresune" icon_state = "sabresune"
ckeys_allowed = list("poojawa") ckeys_allowed = list("poojawa")
extra = TRUE extra = TRUE
extra_color_src = MUTCOLORS3 extra_color_src = MUTCOLORS3
/datum/sprite_accessory/tails/mam_tails/sabresune /datum/sprite_accessory/mam_tails/sabresune
name = "Sabresune" name = "Sabresune"
icon_state = "sabresune" icon_state = "sabresune"
ckeys_allowed = list("poojawa") ckeys_allowed = list("poojawa")
/datum/sprite_accessory/tails_animated/mam_tails_animated/sabresune /datum/sprite_accessory/mam_tails_animated/sabresune
name = "Sabresune" name = "Sabresune"
icon_state = "sabresune" icon_state = "sabresune"
ckeys_allowed = list("poojawa") ckeys_allowed = list("poojawa")
@@ -37,17 +37,17 @@
ckeys_allowed = list("poojawa") ckeys_allowed = list("poojawa")
//Lunasune //Lunasune
/datum/sprite_accessory/ears/mam_ears/lunasune /datum/sprite_accessory/mam_ears/lunasune
name = "lunasune" name = "lunasune"
icon_state = "lunasune" icon_state = "lunasune"
ckeys_allowed = list("invader4352") ckeys_allowed = list("invader4352")
/datum/sprite_accessory/tails/mam_tails/lunasune /datum/sprite_accessory/mam_tails/lunasune
name = "lunasune" name = "lunasune"
icon_state = "lunasune" icon_state = "lunasune"
ckeys_allowed = list("invader4352") ckeys_allowed = list("invader4352")
/datum/sprite_accessory/tails_animated/mam_tails_animated/lunasune /datum/sprite_accessory/mam_tails_animated/lunasune
name = "lunasune" name = "lunasune"
icon_state = "lunasune" icon_state = "lunasune"
ckeys_allowed = list("invader4352") ckeys_allowed = list("invader4352")
@@ -76,9 +76,6 @@
//For soft-restricting markings to species IDs //For soft-restricting markings to species IDs
var/list/recommended_species var/list/recommended_species
/datum/sprite_accessory/proc/is_not_visible(var/mob/living/carbon/human/H, var/tauric) //return if the accessory shouldn't be shown
return FALSE
/datum/sprite_accessory/underwear /datum/sprite_accessory/underwear
icon = 'icons/mob/clothing/underwear.dmi' icon = 'icons/mob/clothing/underwear.dmi'
var/has_color = FALSE var/has_color = FALSE
@@ -7,9 +7,6 @@
mutant_part_string = "xenodorsal" mutant_part_string = "xenodorsal"
relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/xeno_dorsal/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return (!H.dna.features["xenodorsal"] || H.dna.features["xenodorsal"] == "None" || (H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)))
/datum/sprite_accessory/xeno_dorsal/standard /datum/sprite_accessory/xeno_dorsal/standard
name = "Standard" name = "Standard"
icon_state = "standard" icon_state = "standard"
@@ -30,9 +27,6 @@
mutant_part_string = "tail" mutant_part_string = "tail"
relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/xeno_tail/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return (!H.dna.features["xenotail"] || H.dna.features["xenotail"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
/datum/sprite_accessory/xeno_tail/none /datum/sprite_accessory/xeno_tail/none
name = "None" name = "None"
relevant_layers = null relevant_layers = null
@@ -49,10 +43,6 @@
mutant_part_string = "xhead" mutant_part_string = "xhead"
relevant_layers = list(BODY_ADJ_LAYER) relevant_layers = list(BODY_ADJ_LAYER)
/datum/sprite_accessory/xeno_head/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD)
return (!H.dna.features["xenohead"] || H.dna.features["xenohead"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == BODYPART_ROBOTIC)
/datum/sprite_accessory/xeno_head/standard /datum/sprite_accessory/xeno_head/standard
name = "Standard" name = "Standard"
icon_state = "standard" icon_state = "standard"
@@ -224,9 +224,6 @@
color_src = 0 color_src = 0
relevant_layers = list(BODY_FRONT_LAYER) relevant_layers = list(BODY_FRONT_LAYER)
/datum/sprite_accessory/insect_fluff/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return (!H.dna.features["insect_fluff"] || H.dna.features["insect_fluff"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
/datum/sprite_accessory/insect_fluff/none /datum/sprite_accessory/insect_fluff/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
@@ -3,10 +3,6 @@
mutant_part_string = "ears" mutant_part_string = "ears"
relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/ears/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD)
return (!H.dna.features["ears"] || H.dna.features["ears"] == "None" || H.head && (H.head.flags_inv & HIDEEARS) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEEARS)) || !HD || HD.status == BODYPART_ROBOTIC)
/datum/sprite_accessory/ears/none /datum/sprite_accessory/ears/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
@@ -179,54 +175,50 @@
*************** Furry Ears **************** *************** Furry Ears ****************
*******************************************/ *******************************************/
/datum/sprite_accessory/ears/mam_ears /datum/sprite_accessory/mam_ears
icon = 'modular_citadel/icons/mob/mam_ears.dmi' icon = 'modular_citadel/icons/mob/mam_ears.dmi'
color_src = MATRIXED color_src = MATRIXED
mutant_part_string = "ears" mutant_part_string = "ears"
relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/ears/mam_ears/is_not_visible(var/mob/living/carbon/human/H, var/tauric) /datum/sprite_accessory/mam_ears/none
var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD)
return (!H.dna.features["mam_ears"] || H.dna.features["mam_ears"] == "None" || H.head && (H.head.flags_inv & HIDEEARS) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEEARS)) || !HD || HD.status == BODYPART_ROBOTIC)
/datum/sprite_accessory/ears/mam_ears/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
relevant_layers = null relevant_layers = null
/datum/sprite_accessory/ears/mam_ears/axolotl /datum/sprite_accessory/mam_ears/axolotl
name = "Axolotl" name = "Axolotl"
icon_state = "axolotl" icon_state = "axolotl"
/datum/sprite_accessory/ears/mam_ears/bat /datum/sprite_accessory/mam_ears/bat
name = "Bat" name = "Bat"
icon_state = "bat" icon_state = "bat"
/datum/sprite_accessory/ears/mam_ears/bear /datum/sprite_accessory/mam_ears/bear
name = "Bear" name = "Bear"
icon_state = "bear" icon_state = "bear"
/datum/sprite_accessory/ears/mam_ears/bigwolf /datum/sprite_accessory/mam_ears/bigwolf
name = "Big Wolf" name = "Big Wolf"
icon_state = "bigwolf" icon_state = "bigwolf"
/datum/sprite_accessory/ears/mam_ears/bigwolfinner /datum/sprite_accessory/mam_ears/bigwolfinner
name = "Big Wolf (ALT)" name = "Big Wolf (ALT)"
icon_state = "bigwolfinner" icon_state = "bigwolfinner"
extra = TRUE extra = TRUE
extra_color_src = NONE extra_color_src = NONE
/datum/sprite_accessory/ears/mam_ears/bigwolfdark /datum/sprite_accessory/mam_ears/bigwolfdark
name = "Dark Big Wolf" name = "Dark Big Wolf"
icon_state = "bigwolfdark" icon_state = "bigwolfdark"
/datum/sprite_accessory/ears/mam_ears/bigwolfinnerdark /datum/sprite_accessory/mam_ears/bigwolfinnerdark
name = "Dark Big Wolf (ALT)" name = "Dark Big Wolf (ALT)"
icon_state = "bigwolfinnerdark" icon_state = "bigwolfinnerdark"
extra = TRUE extra = TRUE
extra_color_src = NONE extra_color_src = NONE
/datum/sprite_accessory/ears/mam_ears/cat /datum/sprite_accessory/mam_ears/cat
name = "Cat" name = "Cat"
icon_state = "cat" icon_state = "cat"
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
@@ -234,100 +226,100 @@
extra = TRUE extra = TRUE
extra_color_src = NONE extra_color_src = NONE
/datum/sprite_accessory/ears/mam_ears/catbig /datum/sprite_accessory/mam_ears/catbig
name = "Cat, Big" name = "Cat, Big"
icon_state = "catbig" icon_state = "catbig"
/datum/sprite_accessory/ears/mam_ears/cow /datum/sprite_accessory/mam_ears/cow
name = "Cow" name = "Cow"
icon_state = "cow" icon_state = "cow"
/datum/sprite_accessory/ears/mam_ears/curled /datum/sprite_accessory/mam_ears/curled
name = "Curled Horn" name = "Curled Horn"
icon_state = "horn1" icon_state = "horn1"
color_src = MUTCOLORS3 color_src = MUTCOLORS3
/datum/sprite_accessory/ears/mam_ears/deer /datum/sprite_accessory/mam_ears/deer
name = "Deer" name = "Deer"
icon_state = "deer" icon_state = "deer"
color_src = MUTCOLORS3 color_src = MUTCOLORS3
/datum/sprite_accessory/ears/mam_ears/eevee /datum/sprite_accessory/mam_ears/eevee
name = "Eevee" name = "Eevee"
icon_state = "eevee" icon_state = "eevee"
/datum/sprite_accessory/ears/mam_ears/elf /datum/sprite_accessory/mam_ears/elf
name = "Elf" name = "Elf"
icon_state = "elf" icon_state = "elf"
color_src = MUTCOLORS3 color_src = MUTCOLORS3
/datum/sprite_accessory/ears/mam_ears/elephant /datum/sprite_accessory/mam_ears/elephant
name = "Elephant" name = "Elephant"
icon_state = "elephant" icon_state = "elephant"
/datum/sprite_accessory/ears/mam_ears/fennec /datum/sprite_accessory/mam_ears/fennec
name = "Fennec" name = "Fennec"
icon_state = "fennec" icon_state = "fennec"
/datum/sprite_accessory/ears/mam_ears/fish /datum/sprite_accessory/mam_ears/fish
name = "Fish" name = "Fish"
icon_state = "fish" icon_state = "fish"
/datum/sprite_accessory/ears/mam_ears/fox /datum/sprite_accessory/mam_ears/fox
name = "Fox" name = "Fox"
icon_state = "fox" icon_state = "fox"
/datum/sprite_accessory/ears/mam_ears/husky /datum/sprite_accessory/mam_ears/husky
name = "Husky" name = "Husky"
icon_state = "wolf" icon_state = "wolf"
/datum/sprite_accessory/ears/mam_ears/kangaroo /datum/sprite_accessory/mam_ears/kangaroo
name = "kangaroo" name = "kangaroo"
icon_state = "kangaroo" icon_state = "kangaroo"
/datum/sprite_accessory/ears/mam_ears/jellyfish /datum/sprite_accessory/mam_ears/jellyfish
name = "Jellyfish" name = "Jellyfish"
icon_state = "jellyfish" icon_state = "jellyfish"
color_src = HAIR color_src = HAIR
/datum/sprite_accessory/ears/mam_ears/lab /datum/sprite_accessory/mam_ears/lab
name = "Dog, Long" name = "Dog, Long"
icon_state = "lab" icon_state = "lab"
/datum/sprite_accessory/ears/mam_ears/murid /datum/sprite_accessory/mam_ears/murid
name = "Murid" name = "Murid"
icon_state = "murid" icon_state = "murid"
/datum/sprite_accessory/ears/mam_ears/otie /datum/sprite_accessory/mam_ears/otie
name = "Otusian" name = "Otusian"
icon_state = "otie" icon_state = "otie"
/datum/sprite_accessory/ears/mam_ears/squirrel /datum/sprite_accessory/mam_ears/squirrel
name = "Squirrel" name = "Squirrel"
icon_state = "squirrel" icon_state = "squirrel"
/datum/sprite_accessory/ears/mam_ears/pede /datum/sprite_accessory/mam_ears/pede
name = "Scolipede" name = "Scolipede"
icon_state = "pede" icon_state = "pede"
/datum/sprite_accessory/ears/mam_ears/rabbit /datum/sprite_accessory/mam_ears/rabbit
name = "Rabbit" name = "Rabbit"
icon_state = "rabbit" icon_state = "rabbit"
/datum/sprite_accessory/ears/mam_ears/sergal /datum/sprite_accessory/mam_ears/sergal
name = "Sergal" name = "Sergal"
icon_state = "sergal" icon_state = "sergal"
/datum/sprite_accessory/ears/mam_ears/skunk /datum/sprite_accessory/mam_ears/skunk
name = "skunk" name = "skunk"
icon_state = "skunk" icon_state = "skunk"
/datum/sprite_accessory/ears/mam_ears/wolf /datum/sprite_accessory/mam_ears/wolf
name = "Wolf" name = "Wolf"
icon_state = "wolf" icon_state = "wolf"
/datum/sprite_accessory/ears/mam_ears/bunny /datum/sprite_accessory/mam_ears/bunny
name = "Bunny" name = "Bunny"
icon_state = "bunny" icon_state = "bunny"
@@ -2,10 +2,6 @@
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
relevant_layers = list(BODY_ADJ_LAYER) relevant_layers = list(BODY_ADJ_LAYER)
/datum/sprite_accessory/frills/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD)
return (!H.dna.features["frills"] || H.dna.features["frills"] == "None" || H.head && (H.head.flags_inv & HIDEEARS) || !HD || HD.status == BODYPART_ROBOTIC)
/datum/sprite_accessory/frills/none /datum/sprite_accessory/frills/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
@@ -3,10 +3,6 @@
color_src = HORNCOLOR color_src = HORNCOLOR
relevant_layers = list(HORNS_LAYER) relevant_layers = list(HORNS_LAYER)
/datum/sprite_accessory/horns/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD)
return (!H.dna.features["horns"] || H.dna.features["horns"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == BODYPART_ROBOTIC)
/datum/sprite_accessory/horns/none /datum/sprite_accessory/horns/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
@@ -30,9 +30,6 @@
var/alt_taur_mode = NONE //Same as above. var/alt_taur_mode = NONE //Same as above.
var/hide_legs = USE_QUADRUPED_CLIP_MASK var/hide_legs = USE_QUADRUPED_CLIP_MASK
/datum/sprite_accessory/taur/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return (!tauric || (H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)))
/datum/sprite_accessory/taur/New() /datum/sprite_accessory/taur/New()
switch(hide_legs) switch(hide_legs)
if(USE_QUADRUPED_CLIP_MASK) if(USE_QUADRUPED_CLIP_MASK)
@@ -3,10 +3,6 @@
mutant_part_string = "snout" mutant_part_string = "snout"
relevant_layers = list(BODY_ADJ_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_ADJ_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/snouts/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD)
return ((H.wear_mask && (H.wear_mask.flags_inv & HIDESNOUT)) || (H.head && (H.head.flags_inv & HIDESNOUT)) || !HD || HD.status == BODYPART_ROBOTIC)
/datum/sprite_accessory/snouts/sharp /datum/sprite_accessory/snouts/sharp
name = "Sharp" name = "Sharp"
icon_state = "sharp" icon_state = "sharp"
@@ -154,39 +150,35 @@
************** Mammal Snouts ************** ************** Mammal Snouts **************
*******************************************/ *******************************************/
/datum/sprite_accessory/snouts/mam_snouts /datum/sprite_accessory/mam_snouts
color_src = MATRIXED color_src = MATRIXED
icon = 'modular_citadel/icons/mob/mam_snouts.dmi' icon = 'modular_citadel/icons/mob/mam_snouts.dmi'
recommended_species = list("mammal", "slimeperson", "insect", "podweak") recommended_species = list("mammal", "slimeperson", "insect", "podweak")
mutant_part_string = "snout" mutant_part_string = "snout"
relevant_layers = list(BODY_ADJ_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_ADJ_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/snouts/mam_snouts/is_not_visible(var/mob/living/carbon/human/H, var/tauric) /datum/sprite_accessory/mam_snouts/none
var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD)
return ((H.wear_mask && (H.wear_mask.flags_inv & HIDESNOUT)) || (H.head && (H.head.flags_inv & HIDESNOUT)) || !HD || HD.status == BODYPART_ROBOTIC)
/datum/sprite_accessory/snouts/mam_snouts/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
recommended_species = null recommended_species = null
relevant_layers = null relevant_layers = null
/datum/sprite_accessory/snouts/mam_snouts/bird /datum/sprite_accessory/mam_snouts/bird
name = "Beak" name = "Beak"
icon_state = "bird" icon_state = "bird"
/datum/sprite_accessory/snouts/mam_snouts/bigbeak /datum/sprite_accessory/mam_snouts/bigbeak
name = "Big Beak" name = "Big Beak"
icon_state = "bigbeak" icon_state = "bigbeak"
/datum/sprite_accessory/snouts/mam_snouts/bug /datum/sprite_accessory/mam_snouts/bug
name = "Bug" name = "Bug"
icon_state = "bug" icon_state = "bug"
color_src = MUTCOLORS color_src = MUTCOLORS
extra2 = TRUE extra2 = TRUE
extra2_color_src = MUTCOLORS3 extra2_color_src = MUTCOLORS3
/datum/sprite_accessory/snouts/mam_snouts/elephant /datum/sprite_accessory/mam_snouts/elephant
name = "Elephant" name = "Elephant"
icon_state = "elephant" icon_state = "elephant"
extra = TRUE extra = TRUE
@@ -202,92 +194,92 @@
name = "Mammal, Long" name = "Mammal, Long"
icon_state = "lcanid" icon_state = "lcanid"
/datum/sprite_accessory/snouts/mam_snouts/lcanidalt /datum/sprite_accessory/mam_snouts/lcanidalt
name = "Mammal, Long ALT" name = "Mammal, Long ALT"
icon_state = "lcanidalt" icon_state = "lcanidalt"
/datum/sprite_accessory/snouts/mam_snouts/scanid /datum/sprite_accessory/mam_snouts/scanid
name = "Mammal, Short" name = "Mammal, Short"
icon_state = "scanid" icon_state = "scanid"
/datum/sprite_accessory/snouts/mam_snouts/scanidalt /datum/sprite_accessory/mam_snouts/scanidalt
name = "Mammal, Short ALT" name = "Mammal, Short ALT"
icon_state = "scanidalt" icon_state = "scanidalt"
/datum/sprite_accessory/snouts/mam_snouts/scanidalt2 /datum/sprite_accessory/mam_snouts/scanidalt2
name = "Mammal, Short ALT 2" name = "Mammal, Short ALT 2"
icon_state = "scanidalt2" icon_state = "scanidalt2"
/datum/sprite_accessory/snouts/mam_snouts/wolf /datum/sprite_accessory/mam_snouts/wolf
name = "Mammal, Thick" name = "Mammal, Thick"
icon_state = "wolf" icon_state = "wolf"
/datum/sprite_accessory/snouts/mam_snouts/wolfalt /datum/sprite_accessory/mam_snouts/wolfalt
name = "Mammal, Thick ALT" name = "Mammal, Thick ALT"
icon_state = "wolfalt" icon_state = "wolfalt"
/datum/sprite_accessory/snouts/mam_snouts/redpanda /datum/sprite_accessory/mam_snouts/redpanda
name = "WahCoon" name = "WahCoon"
icon_state = "wah" icon_state = "wah"
/datum/sprite_accessory/snouts/mam_snouts/redpandaalt /datum/sprite_accessory/mam_snouts/redpandaalt
name = "WahCoon ALT" name = "WahCoon ALT"
icon_state = "wahalt" icon_state = "wahalt"
/datum/sprite_accessory/snouts/mam_snouts/rhino /datum/sprite_accessory/mam_snouts/rhino
name = "Horn" name = "Horn"
icon_state = "rhino" icon_state = "rhino"
extra = TRUE extra = TRUE
extra = MUTCOLORS3 extra = MUTCOLORS3
/datum/sprite_accessory/snouts/mam_snouts/rodent /datum/sprite_accessory/mam_snouts/rodent
name = "Rodent" name = "Rodent"
icon_state = "rodent" icon_state = "rodent"
/datum/sprite_accessory/snouts/mam_snouts/husky /datum/sprite_accessory/mam_snouts/husky
name = "Husky" name = "Husky"
icon_state = "husky" icon_state = "husky"
/datum/sprite_accessory/snouts/mam_snouts/otie /datum/sprite_accessory/mam_snouts/otie
name = "Otie" name = "Otie"
icon_state = "otie" icon_state = "otie"
/datum/sprite_accessory/snouts/mam_snouts/pede /datum/sprite_accessory/mam_snouts/pede
name = "Scolipede" name = "Scolipede"
icon_state = "pede" icon_state = "pede"
/datum/sprite_accessory/snouts/mam_snouts/sergal /datum/sprite_accessory/mam_snouts/sergal
name = "Sergal" name = "Sergal"
icon_state = "sergal" icon_state = "sergal"
/datum/sprite_accessory/snouts/mam_snouts/shark /datum/sprite_accessory/mam_snouts/shark
name = "Shark" name = "Shark"
icon_state = "shark" icon_state = "shark"
/datum/sprite_accessory/snouts/mam_snouts/hshark /datum/sprite_accessory/mam_snouts/hshark
name = "hShark" name = "hShark"
icon_state = "hshark" icon_state = "hshark"
/datum/sprite_accessory/snouts/mam_snouts/toucan /datum/sprite_accessory/mam_snouts/toucan
name = "Toucan" name = "Toucan"
icon_state = "toucan" icon_state = "toucan"
/datum/sprite_accessory/snouts/mam_snouts/sharp /datum/sprite_accessory/mam_snouts/sharp
name = "Sharp" name = "Sharp"
icon_state = "sharp" icon_state = "sharp"
color_src = MUTCOLORS color_src = MUTCOLORS
/datum/sprite_accessory/snouts/mam_snouts/round /datum/sprite_accessory/mam_snouts/round
name = "Round" name = "Round"
icon_state = "round" icon_state = "round"
color_src = MUTCOLORS color_src = MUTCOLORS
/datum/sprite_accessory/snouts/mam_snouts/sharplight /datum/sprite_accessory/mam_snouts/sharplight
name = "Sharp + Light" name = "Sharp + Light"
icon_state = "sharplight" icon_state = "sharplight"
color_src = MUTCOLORS color_src = MUTCOLORS
/datum/sprite_accessory/snouts/mam_snouts/roundlight /datum/sprite_accessory/mam_snouts/roundlight
name = "Round + Light" name = "Round + Light"
icon_state = "roundlight" icon_state = "roundlight"
color_src = MUTCOLORS color_src = MUTCOLORS
@@ -297,109 +289,109 @@
**************** Snouts ******************* **************** Snouts *******************
*************but higher up*****************/ *************but higher up*****************/
/datum/sprite_accessory/snouts/mam_snouts/fbird /datum/sprite_accessory/mam_snouts/fbird
name = "Beak (Top)" name = "Beak (Top)"
icon_state = "fbird" icon_state = "fbird"
/datum/sprite_accessory/snouts/mam_snouts/fbigbeak /datum/sprite_accessory/mam_snouts/fbigbeak
name = "Big Beak (Top)" name = "Big Beak (Top)"
icon_state = "fbigbeak" icon_state = "fbigbeak"
/datum/sprite_accessory/snouts/mam_snouts/fbug /datum/sprite_accessory/mam_snouts/fbug
name = "Bug (Top)" name = "Bug (Top)"
icon_state = "fbug" icon_state = "fbug"
color_src = MUTCOLORS color_src = MUTCOLORS
extra2 = TRUE extra2 = TRUE
extra2_color_src = MUTCOLORS3 extra2_color_src = MUTCOLORS3
/datum/sprite_accessory/snouts/mam_snouts/felephant /datum/sprite_accessory/mam_snouts/felephant
name = "Elephant (Top)" name = "Elephant (Top)"
icon_state = "felephant" icon_state = "felephant"
extra = TRUE extra = TRUE
extra_color_src = MUTCOLORS3 extra_color_src = MUTCOLORS3
/datum/sprite_accessory/snouts/mam_snouts/flcanid /datum/sprite_accessory/mam_snouts/flcanid
name = "Mammal, Long (Top)" name = "Mammal, Long (Top)"
icon_state = "flcanid" icon_state = "flcanid"
/datum/sprite_accessory/snouts/mam_snouts/flcanidalt /datum/sprite_accessory/mam_snouts/flcanidalt
name = "Mammal, Long ALT (Top)" name = "Mammal, Long ALT (Top)"
icon_state = "flcanidalt" icon_state = "flcanidalt"
/datum/sprite_accessory/snouts/mam_snouts/fscanid /datum/sprite_accessory/mam_snouts/fscanid
name = "Mammal, Short (Top)" name = "Mammal, Short (Top)"
icon_state = "fscanid" icon_state = "fscanid"
/datum/sprite_accessory/snouts/mam_snouts/fscanidalt /datum/sprite_accessory/mam_snouts/fscanidalt
name = "Mammal, Short ALT (Top)" name = "Mammal, Short ALT (Top)"
icon_state = "fscanidalt" icon_state = "fscanidalt"
/datum/sprite_accessory/snouts/mam_snouts/fscanidalt2 /datum/sprite_accessory/mam_snouts/fscanidalt2
name = "Mammal, Short ALT 2 (Top)" name = "Mammal, Short ALT 2 (Top)"
icon_state = "fscanidalt2" icon_state = "fscanidalt2"
/datum/sprite_accessory/snouts/mam_snouts/fwolf /datum/sprite_accessory/mam_snouts/fwolf
name = "Mammal, Thick (Top)" name = "Mammal, Thick (Top)"
icon_state = "fwolf" icon_state = "fwolf"
/datum/sprite_accessory/snouts/mam_snouts/fwolfalt /datum/sprite_accessory/mam_snouts/fwolfalt
name = "Mammal, Thick ALT (Top)" name = "Mammal, Thick ALT (Top)"
icon_state = "fwolfalt" icon_state = "fwolfalt"
/datum/sprite_accessory/snouts/mam_snouts/fredpanda /datum/sprite_accessory/mam_snouts/fredpanda
name = "WahCoon (Top)" name = "WahCoon (Top)"
icon_state = "fwah" icon_state = "fwah"
/datum/sprite_accessory/snouts/mam_snouts/frhino /datum/sprite_accessory/mam_snouts/frhino
name = "Horn (Top)" name = "Horn (Top)"
icon_state = "frhino" icon_state = "frhino"
extra = TRUE extra = TRUE
extra = MUTCOLORS3 extra = MUTCOLORS3
/datum/sprite_accessory/snouts/mam_snouts/frodent /datum/sprite_accessory/mam_snouts/frodent
name = "Rodent (Top)" name = "Rodent (Top)"
icon_state = "frodent" icon_state = "frodent"
/datum/sprite_accessory/snouts/mam_snouts/fhusky /datum/sprite_accessory/mam_snouts/fhusky
name = "Husky (Top)" name = "Husky (Top)"
icon_state = "fhusky" icon_state = "fhusky"
/datum/sprite_accessory/snouts/mam_snouts/fotie /datum/sprite_accessory/mam_snouts/fotie
name = "Otie (Top)" name = "Otie (Top)"
icon_state = "fotie" icon_state = "fotie"
/datum/sprite_accessory/snouts/mam_snouts/fpede /datum/sprite_accessory/mam_snouts/fpede
name = "Scolipede (Top)" name = "Scolipede (Top)"
icon_state = "fpede" icon_state = "fpede"
/datum/sprite_accessory/snouts/mam_snouts/fsergal /datum/sprite_accessory/mam_snouts/fsergal
name = "Sergal (Top)" name = "Sergal (Top)"
icon_state = "fsergal" icon_state = "fsergal"
/datum/sprite_accessory/snouts/mam_snouts/fshark /datum/sprite_accessory/mam_snouts/fshark
name = "Shark (Top)" name = "Shark (Top)"
icon_state = "fshark" icon_state = "fshark"
/datum/sprite_accessory/snouts/mam_snouts/ftoucan /datum/sprite_accessory/mam_snouts/ftoucan
name = "Toucan (Top)" name = "Toucan (Top)"
icon_state = "ftoucan" icon_state = "ftoucan"
/datum/sprite_accessory/snouts/mam_snouts/fsharp /datum/sprite_accessory/mam_snouts/fsharp
name = "Sharp (Top)" name = "Sharp (Top)"
icon_state = "fsharp" icon_state = "fsharp"
color_src = MUTCOLORS color_src = MUTCOLORS
/datum/sprite_accessory/snouts/mam_snouts/fround /datum/sprite_accessory/mam_snouts/fround
name = "Round (Top)" name = "Round (Top)"
icon_state = "fround" icon_state = "fround"
color_src = MUTCOLORS color_src = MUTCOLORS
/datum/sprite_accessory/snouts/mam_snouts/fsharplight /datum/sprite_accessory/mam_snouts/fsharplight
name = "Sharp + Light (Top)" name = "Sharp + Light (Top)"
icon_state = "fsharplight" icon_state = "fsharplight"
color_src = MUTCOLORS color_src = MUTCOLORS
/datum/sprite_accessory/snouts/mam_snouts/froundlight /datum/sprite_accessory/mam_snouts/froundlight
name = "Round + Light (Top)" name = "Round + Light (Top)"
icon_state = "froundlight" icon_state = "froundlight"
color_src = MUTCOLORS color_src = MUTCOLORS
@@ -2,15 +2,10 @@
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER)
/datum/sprite_accessory/spines/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return (!H.dna.features["spines"] || H.dna.features["spines"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR))
/datum/sprite_accessory/spines_animated /datum/sprite_accessory/spines_animated
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER)
/datum/sprite_accessory/spines_animated/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return (!H.dna.features["spines"] || H.dna.features["spines"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR) || H.dna.species.mutant_bodyparts["tail"])
/datum/sprite_accessory/spines/none /datum/sprite_accessory/spines/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
@@ -1,24 +1,24 @@
//Synth snouts (This is the most important part) //Synth snouts (This is the most important part)
/datum/sprite_accessory/snouts/mam_snouts/synthliz /datum/sprite_accessory/mam_snouts/synthliz
recommended_species = list("synthliz") recommended_species = list("synthliz")
icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi' icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi'
color_src = MUTCOLORS color_src = MUTCOLORS
name = "Synthetic Lizard - Snout" name = "Synthetic Lizard - Snout"
icon_state = "synthliz_basic" icon_state = "synthliz_basic"
/datum/sprite_accessory/snouts/mam_snouts/synthliz/synthliz_under /datum/sprite_accessory/mam_snouts/synthliz/synthliz_under
icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi' icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi'
color_src = MATRIXED color_src = MATRIXED
name = "Synthetic Lizard - Snout Under" name = "Synthetic Lizard - Snout Under"
icon_state = "synthliz_under" icon_state = "synthliz_under"
/datum/sprite_accessory/snouts/mam_snouts/synthliz/synthliz_tert /datum/sprite_accessory/mam_snouts/synthliz/synthliz_tert
icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi' icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi'
color_src = MATRIXED color_src = MATRIXED
name = "Synthetic Lizard - Snout Tertiary" name = "Synthetic Lizard - Snout Tertiary"
icon_state = "synthliz_tert" icon_state = "synthliz_tert"
/datum/sprite_accessory/snouts/mam_snouts/synthliz/synthliz_tertunder /datum/sprite_accessory/mam_snouts/synthliz/synthliz_tertunder
icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi' icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi'
color_src = MATRIXED color_src = MATRIXED
name = "Synthetic Lizard - Snout Tertiary Under" name = "Synthetic Lizard - Snout Tertiary Under"
@@ -42,14 +42,14 @@
icon_state = "synthlizpecslight" icon_state = "synthlizpecslight"
//Synth tails //Synth tails
/datum/sprite_accessory/tails/mam_tails/synthliz /datum/sprite_accessory/mam_tails/synthliz
recommended_species = list("synthliz") recommended_species = list("synthliz")
icon = 'modular_citadel/icons/mob/synthliz_tails.dmi' icon = 'modular_citadel/icons/mob/synthliz_tails.dmi'
color_src = MUTCOLORS color_src = MUTCOLORS
name = "Synthetic Lizard" name = "Synthetic Lizard"
icon_state = "synthliz" icon_state = "synthliz"
/datum/sprite_accessory/tails_animated/mam_tails_animated/synthliz /datum/sprite_accessory/mam_tails_animated/synthliz
recommended_species = list("synthliz") recommended_species = list("synthliz")
icon = 'modular_citadel/icons/mob/synthliz_tails.dmi' icon = 'modular_citadel/icons/mob/synthliz_tails.dmi'
color_src = MUTCOLORS color_src = MUTCOLORS
@@ -3,9 +3,6 @@
mutant_part_string = "tail" mutant_part_string = "tail"
relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/tails/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return ((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric)
/datum/sprite_accessory/tails_animated /datum/sprite_accessory/tails_animated
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
mutant_part_string = "tailwag" mutant_part_string = "tailwag"
@@ -15,9 +12,6 @@
************* Lizard Tails **************** ************* Lizard Tails ****************
*******************************************/ *******************************************/
/datum/sprite_accessory/tails_animated/lizard/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return ((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric || H.dna.species.mutant_bodyparts["tail_lizard"])
/datum/sprite_accessory/tails/lizard/smooth /datum/sprite_accessory/tails/lizard/smooth
name = "Smooth" name = "Smooth"
icon_state = "smooth" icon_state = "smooth"
@@ -104,9 +98,6 @@
icon_state = "none" icon_state = "none"
relevant_layers = null relevant_layers = null
/datum/sprite_accessory/tails_animated/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return ((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric || H.dna.species.mutant_bodyparts["tail_human"])
/datum/sprite_accessory/tails/human/ailurus /datum/sprite_accessory/tails/human/ailurus
name = "Red Panda" name = "Red Panda"
icon_state = "wah" icon_state = "wah"
@@ -131,22 +122,22 @@
icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon = 'modular_citadel/icons/mob/mam_tails.dmi'
color_src = MATRIXED color_src = MATRIXED
/datum/sprite_accessory/tails/mam_tails/batl /datum/sprite_accessory/mam_tails/batl
name = "Bat (Long)" name = "Bat (Long)"
icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon = 'modular_citadel/icons/mob/mam_tails.dmi'
icon_state = "batl" icon_state = "batl"
/datum/sprite_accessory/tails_animated/mam_tails_animated/batl /datum/sprite_accessory/mam_tails_animated/batl
name = "Bat (Long)" name = "Bat (Long)"
icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon = 'modular_citadel/icons/mob/mam_tails.dmi'
icon_state = "batl" icon_state = "batl"
/datum/sprite_accessory/tails/mam_tails/bats /datum/sprite_accessory/mam_tails/bats
name = "Bat (Short)" name = "Bat (Short)"
icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon = 'modular_citadel/icons/mob/mam_tails.dmi'
icon_state = "bats" icon_state = "bats"
/datum/sprite_accessory/tails_animated/mam_tails_animated/bats /datum/sprite_accessory/mam_tails_animated/bats
name = "Bat (Short)" name = "Bat (Short)"
icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon = 'modular_citadel/icons/mob/mam_tails.dmi'
icon_state = "bats" icon_state = "bats"
@@ -527,371 +518,368 @@
************** Furry Tails **************** ************** Furry Tails ****************
*******************************************/ *******************************************/
/datum/sprite_accessory/tails/mam_tails /datum/sprite_accessory/mam_tails
color_src = MATRIXED color_src = MATRIXED
icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon = 'modular_citadel/icons/mob/mam_tails.dmi'
recommended_species = list("mammal", "slimeperson", "podweak", "felinid", "insect") recommended_species = list("mammal", "slimeperson", "podweak", "felinid", "insect")
mutant_part_string = "tail" mutant_part_string = "tail"
relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/tails/mam_tails/none /datum/sprite_accessory/mam_tails/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
recommended_species = null recommended_species = null
relevant_layers = null relevant_layers = null
/datum/sprite_accessory/tails_animated/mam_tails_animated /datum/sprite_accessory/mam_tails_animated
color_src = MATRIXED color_src = MATRIXED
icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon = 'modular_citadel/icons/mob/mam_tails.dmi'
mutant_part_string = "tailwag" mutant_part_string = "tailwag"
relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/tails_animated/mam_tails_animated/is_not_visible(var/mob/living/carbon/human/H, var/tauric) /datum/sprite_accessory/mam_tails_animated/none
return ((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric || H.dna.species.mutant_bodyparts["mam_tail"])
/datum/sprite_accessory/tails_animated/mam_tails_animated/none
name = "None" name = "None"
icon_state = "none" icon_state = "none"
relevant_layers = null relevant_layers = null
/datum/sprite_accessory/tails/mam_tails/ailurus /datum/sprite_accessory/mam_tails/ailurus
name = "Red Panda" name = "Red Panda"
icon_state = "wah" icon_state = "wah"
extra = TRUE extra = TRUE
/datum/sprite_accessory/tails_animated/mam_tails_animated/ailurus /datum/sprite_accessory/mam_tails_animated/ailurus
name = "Red Panda" name = "Red Panda"
icon_state = "wah" icon_state = "wah"
extra = TRUE extra = TRUE
/datum/sprite_accessory/tails/mam_tails/axolotl /datum/sprite_accessory/mam_tails/axolotl
name = "Axolotl" name = "Axolotl"
icon_state = "axolotl" icon_state = "axolotl"
/datum/sprite_accessory/tails_animated/mam_tails_animated/axolotl /datum/sprite_accessory/mam_tails_animated/axolotl
name = "Axolotl" name = "Axolotl"
icon_state = "axolotl" icon_state = "axolotl"
/datum/sprite_accessory/tails/mam_tails/batl /datum/sprite_accessory/mam_tails/batl
name = "Bat (Long)" name = "Bat (Long)"
icon_state = "batl" icon_state = "batl"
/datum/sprite_accessory/tails_animated/mam_tails_animated/batl /datum/sprite_accessory/mam_tails_animated/batl
name = "Bat (Long)" name = "Bat (Long)"
icon_state = "batl" icon_state = "batl"
/datum/sprite_accessory/tails/mam_tails/bats /datum/sprite_accessory/mam_tails/bats
name = "Bat (Short)" name = "Bat (Short)"
icon_state = "bats" icon_state = "bats"
/datum/sprite_accessory/tails_animated/mam_tails_animated/bats /datum/sprite_accessory/mam_tails_animated/bats
name = "Bat (Short)" name = "Bat (Short)"
icon_state = "bats" icon_state = "bats"
/datum/sprite_accessory/tails/mam_tails/bee /datum/sprite_accessory/mam_tails/bee
name = "Bee" name = "Bee"
icon_state = "bee" icon_state = "bee"
/datum/sprite_accessory/tails_animated/mam_tails_animated/bee /datum/sprite_accessory/mam_tails_animated/bee
name = "Bee" name = "Bee"
icon_state = "bee" icon_state = "bee"
/datum/sprite_accessory/tails/mam_tails/cat /datum/sprite_accessory/mam_tails/cat
name = "Cat" name = "Cat"
icon_state = "cat" icon_state = "cat"
color_src = HAIR color_src = HAIR
/datum/sprite_accessory/tails_animated/mam_tails_animated/cat /datum/sprite_accessory/mam_tails_animated/cat
name = "Cat" name = "Cat"
icon_state = "cat" icon_state = "cat"
color_src = HAIR color_src = HAIR
/datum/sprite_accessory/tails/mam_tails/catbig /datum/sprite_accessory/mam_tails/catbig
name = "Cat, Big" name = "Cat, Big"
icon_state = "catbig" icon_state = "catbig"
/datum/sprite_accessory/tails_animated/mam_tails_animated/catbig /datum/sprite_accessory/mam_tails_animated/catbig
name = "Cat, Big" name = "Cat, Big"
icon_state = "catbig" icon_state = "catbig"
/datum/sprite_accessory/tails/mam_tails/twocat /datum/sprite_accessory/mam_tails/twocat
name = "Cat, Double" name = "Cat, Double"
icon_state = "twocat" icon_state = "twocat"
/datum/sprite_accessory/tails_animated/mam_tails_animated/twocat /datum/sprite_accessory/mam_tails_animated/twocat
name = "Cat, Double" name = "Cat, Double"
icon_state = "twocat" icon_state = "twocat"
/datum/sprite_accessory/tails/mam_tails/corvid /datum/sprite_accessory/mam_tails/corvid
name = "Corvid" name = "Corvid"
icon_state = "crow" icon_state = "crow"
/datum/sprite_accessory/tails_animated/mam_tails_animated/corvid /datum/sprite_accessory/mam_tails_animated/corvid
name = "Corvid" name = "Corvid"
icon_state = "crow" icon_state = "crow"
/datum/sprite_accessory/tails/mam_tail/cow /datum/sprite_accessory/mam_tail/cow
name = "Cow" name = "Cow"
icon_state = "cow" icon_state = "cow"
/datum/sprite_accessory/tails_animated/mam_tails_animated/cow /datum/sprite_accessory/mam_tails_animated/cow
name = "Cow" name = "Cow"
icon_state = "cow" icon_state = "cow"
/datum/sprite_accessory/tails/mam_tails/eevee /datum/sprite_accessory/mam_tails/eevee
name = "Eevee" name = "Eevee"
icon_state = "eevee" icon_state = "eevee"
/datum/sprite_accessory/tails_animated/mam_tails_animated/eevee /datum/sprite_accessory/mam_tails_animated/eevee
name = "Eevee" name = "Eevee"
icon_state = "eevee" icon_state = "eevee"
/datum/sprite_accessory/tails/mam_tails/fennec /datum/sprite_accessory/mam_tails/fennec
name = "Fennec" name = "Fennec"
icon_state = "fennec" icon_state = "fennec"
/datum/sprite_accessory/tails_animated/mam_tails_animated/fennec /datum/sprite_accessory/mam_tails_animated/fennec
name = "Fennec" name = "Fennec"
icon_state = "fennec" icon_state = "fennec"
/datum/sprite_accessory/tails/mam_tails/human/fish /datum/sprite_accessory/mam_tails/human/fish
name = "Fish" name = "Fish"
icon_state = "fish" icon_state = "fish"
/datum/sprite_accessory/tails_animated/mam_tails_animated/human/fish /datum/sprite_accessory/mam_tails_animated/human/fish
name = "Fish" name = "Fish"
icon_state = "fish" icon_state = "fish"
/datum/sprite_accessory/tails/mam_tails/fox /datum/sprite_accessory/mam_tails/fox
name = "Fox" name = "Fox"
icon_state = "fox" icon_state = "fox"
/datum/sprite_accessory/tails_animated/mam_tails_animated/fox /datum/sprite_accessory/mam_tails_animated/fox
name = "Fox" name = "Fox"
icon_state = "fox" icon_state = "fox"
/datum/sprite_accessory/tails/mam_tails/hawk /datum/sprite_accessory/mam_tails/hawk
name = "Hawk" name = "Hawk"
icon_state = "hawk" icon_state = "hawk"
/datum/sprite_accessory/tails_animated/mam_tails_animated/hawk /datum/sprite_accessory/mam_tails_animated/hawk
name = "Hawk" name = "Hawk"
icon_state = "hawk" icon_state = "hawk"
/datum/sprite_accessory/tails/mam_tails/horse /datum/sprite_accessory/mam_tails/horse
name = "Horse" name = "Horse"
icon_state = "horse" icon_state = "horse"
color_src = HAIR color_src = HAIR
/datum/sprite_accessory/tails_animated/mam_tails_animated/horse /datum/sprite_accessory/mam_tails_animated/horse
name = "Horse" name = "Horse"
icon_state = "horse" icon_state = "horse"
color_src = HAIR color_src = HAIR
/datum/sprite_accessory/tails/mam_tails/husky /datum/sprite_accessory/mam_tails/husky
name = "Husky" name = "Husky"
icon_state = "husky" icon_state = "husky"
/datum/sprite_accessory/tails_animated/mam_tails_animated/husky /datum/sprite_accessory/mam_tails_animated/husky
name = "Husky" name = "Husky"
icon_state = "husky" icon_state = "husky"
datum/sprite_accessory/tails/mam_tails/insect datum/sprite_accessory/mam_tails/insect
name = "Insect" name = "Insect"
icon_state = "insect" icon_state = "insect"
/datum/sprite_accessory/tails_animated/mam_tails_animated/insect /datum/sprite_accessory/mam_tails_animated/insect
name = "Insect" name = "Insect"
icon_state = "insect" icon_state = "insect"
/datum/sprite_accessory/tails/mam_tails/kangaroo /datum/sprite_accessory/mam_tails/kangaroo
name = "kangaroo" name = "kangaroo"
icon_state = "kangaroo" icon_state = "kangaroo"
/datum/sprite_accessory/tails_animated/mam_tails_animated/kangaroo /datum/sprite_accessory/mam_tails_animated/kangaroo
name = "kangaroo" name = "kangaroo"
icon_state = "kangaroo" icon_state = "kangaroo"
/datum/sprite_accessory/tails/mam_tails/kitsune /datum/sprite_accessory/mam_tails/kitsune
name = "Kitsune" name = "Kitsune"
icon_state = "kitsune" icon_state = "kitsune"
/datum/sprite_accessory/tails_animated/mam_tails_animated/kitsune /datum/sprite_accessory/mam_tails_animated/kitsune
name = "Kitsune" name = "Kitsune"
icon_state = "kitsune" icon_state = "kitsune"
/datum/sprite_accessory/tails/mam_tails/lab /datum/sprite_accessory/mam_tails/lab
name = "Lab" name = "Lab"
icon_state = "lab" icon_state = "lab"
/datum/sprite_accessory/tails_animated/mam_tails_animated/lab /datum/sprite_accessory/mam_tails_animated/lab
name = "Lab" name = "Lab"
icon_state = "lab" icon_state = "lab"
/datum/sprite_accessory/tails/mam_tails/murid /datum/sprite_accessory/mam_tails/murid
name = "Murid" name = "Murid"
icon_state = "murid" icon_state = "murid"
/datum/sprite_accessory/tails_animated/mam_tails_animated/murid /datum/sprite_accessory/mam_tails_animated/murid
name = "Murid" name = "Murid"
icon_state = "murid" icon_state = "murid"
/datum/sprite_accessory/tails/mam_tails/otie /datum/sprite_accessory/mam_tails/otie
name = "Otusian" name = "Otusian"
icon_state = "otie" icon_state = "otie"
/datum/sprite_accessory/tails_animated/mam_tails_animated/otie /datum/sprite_accessory/mam_tails_animated/otie
name = "Otusian" name = "Otusian"
icon_state = "otie" icon_state = "otie"
/datum/sprite_accessory/tails/mam_tails/orca /datum/sprite_accessory/mam_tails/orca
name = "Orca" name = "Orca"
icon_state = "orca" icon_state = "orca"
/datum/sprite_accessory/tails_animated/mam_tails_animated/orca /datum/sprite_accessory/mam_tails_animated/orca
name = "Orca" name = "Orca"
icon_state = "orca" icon_state = "orca"
/datum/sprite_accessory/tails/mam_tails/pede /datum/sprite_accessory/mam_tails/pede
name = "Scolipede" name = "Scolipede"
icon_state = "pede" icon_state = "pede"
/datum/sprite_accessory/tails_animated/mam_tails_animated/pede /datum/sprite_accessory/mam_tails_animated/pede
name = "Scolipede" name = "Scolipede"
icon_state = "pede" icon_state = "pede"
/datum/sprite_accessory/tails/mam_tails/rabbit /datum/sprite_accessory/mam_tails/rabbit
name = "Rabbit" name = "Rabbit"
icon_state = "rabbit" icon_state = "rabbit"
/datum/sprite_accessory/tails_animated/mam_tails_animated/rabbit /datum/sprite_accessory/mam_tails_animated/rabbit
name = "Rabbit" name = "Rabbit"
icon_state = "rabbit" icon_state = "rabbit"
/datum/sprite_accessory/tails/mam_tails/sergal /datum/sprite_accessory/mam_tails/sergal
name = "Sergal" name = "Sergal"
icon_state = "sergal" icon_state = "sergal"
/datum/sprite_accessory/tails_animated/mam_tails_animated/sergal /datum/sprite_accessory/mam_tails_animated/sergal
name = "Sergal" name = "Sergal"
icon_state = "sergal" icon_state = "sergal"
/datum/sprite_accessory/tails/mam_tails/skunk /datum/sprite_accessory/mam_tails/skunk
name = "Skunk" name = "Skunk"
icon_state = "skunk" icon_state = "skunk"
/datum/sprite_accessory/tails_animated/mam_tails_animated/skunk /datum/sprite_accessory/mam_tails_animated/skunk
name = "Skunk" name = "Skunk"
icon_state = "skunk" icon_state = "skunk"
/datum/sprite_accessory/tails/mam_tails/smooth /datum/sprite_accessory/mam_tails/smooth
name = "Smooth" name = "Smooth"
icon_state = "smooth" icon_state = "smooth"
color_src = MUTCOLORS color_src = MUTCOLORS
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/mam_tails_animated/smooth /datum/sprite_accessory/mam_tails_animated/smooth
name = "Smooth" name = "Smooth"
icon_state = "smooth" icon_state = "smooth"
color_src = MUTCOLORS color_src = MUTCOLORS
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/mam_tails_animated/spikes /datum/sprite_accessory/mam_tails_animated/spikes
name = "Spikes" name = "Spikes"
icon_state = "spikes" icon_state = "spikes"
color_src = MUTCOLORS color_src = MUTCOLORS
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/tails/mam_tails/spikes /datum/sprite_accessory/mam_tails/spikes
name = "Spikes" name = "Spikes"
icon_state = "spikes" icon_state = "spikes"
color_src = MUTCOLORS color_src = MUTCOLORS
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/tails/mam_tails/shark /datum/sprite_accessory/mam_tails/shark
name = "Shark" name = "Shark"
icon_state = "shark" icon_state = "shark"
/datum/sprite_accessory/tails_animated/mam_tails_animated/shark /datum/sprite_accessory/mam_tails_animated/shark
name = "Shark" name = "Shark"
icon_state = "shark" icon_state = "shark"
/datum/sprite_accessory/tails/mam_tails/shepherd /datum/sprite_accessory/mam_tails/shepherd
name = "Shepherd" name = "Shepherd"
icon_state = "shepherd" icon_state = "shepherd"
/datum/sprite_accessory/tails_animated/mam_tails_animated/shepherd /datum/sprite_accessory/mam_tails_animated/shepherd
name = "Shepherd" name = "Shepherd"
icon_state = "shepherd" icon_state = "shepherd"
/datum/sprite_accessory/tails/mam_tails/straighttail /datum/sprite_accessory/mam_tails/straighttail
name = "Straight Tail" name = "Straight Tail"
icon_state = "straighttail" icon_state = "straighttail"
/datum/sprite_accessory/tails_animated/mam_tails_animated/straighttail /datum/sprite_accessory/mam_tails_animated/straighttail
name = "Straight Tail" name = "Straight Tail"
icon_state = "straighttail" icon_state = "straighttail"
/datum/sprite_accessory/tails/mam_tails/squirrel /datum/sprite_accessory/mam_tails/squirrel
name = "Squirrel" name = "Squirrel"
icon_state = "squirrel" icon_state = "squirrel"
/datum/sprite_accessory/tails_animated/mam_tails_animated/squirrel /datum/sprite_accessory/mam_tails_animated/squirrel
name = "Squirrel" name = "Squirrel"
icon_state = "squirrel" icon_state = "squirrel"
/datum/sprite_accessory/tails/mam_tails/tamamo_kitsune /datum/sprite_accessory/mam_tails/tamamo_kitsune
name = "Tamamo Kitsune Tails" name = "Tamamo Kitsune Tails"
icon_state = "9sune" icon_state = "9sune"
/datum/sprite_accessory/tails_animated/mam_tails_animated/tamamo_kitsune /datum/sprite_accessory/mam_tails_animated/tamamo_kitsune
name = "Tamamo Kitsune Tails" name = "Tamamo Kitsune Tails"
icon_state = "9sune" icon_state = "9sune"
/datum/sprite_accessory/tails/mam_tails/tentacle /datum/sprite_accessory/mam_tails/tentacle
name = "Tentacle" name = "Tentacle"
icon_state = "tentacle" icon_state = "tentacle"
/datum/sprite_accessory/tails_animated/mam_tails_animated/tentacle /datum/sprite_accessory/mam_tails_animated/tentacle
name = "Tentacle" name = "Tentacle"
icon_state = "tentacle" icon_state = "tentacle"
/datum/sprite_accessory/tails/mam_tails/tiger /datum/sprite_accessory/mam_tails/tiger
name = "Tiger" name = "Tiger"
icon_state = "tiger" icon_state = "tiger"
/datum/sprite_accessory/tails_animated/mam_tails_animated/tiger /datum/sprite_accessory/mam_tails_animated/tiger
name = "Tiger" name = "Tiger"
icon_state = "tiger" icon_state = "tiger"
/datum/sprite_accessory/tails/mam_tails/dtiger /datum/sprite_accessory/mam_tails/dtiger
name = "Dark Tiger" name = "Dark Tiger"
icon_state = "dtiger" icon_state = "dtiger"
color_src = MUTCOLORS color_src = MUTCOLORS
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/mam_tails_animated/dtiger /datum/sprite_accessory/mam_tails_animated/dtiger
name = "Dark Tiger" name = "Dark Tiger"
icon_state = "dtiger" icon_state = "dtiger"
color_src = MUTCOLORS color_src = MUTCOLORS
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/tails/mam_tails/ltiger /datum/sprite_accessory/mam_tails/ltiger
name = "Light Tiger" name = "Light Tiger"
icon_state = "ltiger" icon_state = "ltiger"
color_src = MUTCOLORS color_src = MUTCOLORS
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/mam_tails_animated/ltiger /datum/sprite_accessory/mam_tails_animated/ltiger
name = "Light Tiger" name = "Light Tiger"
icon_state = "ltiger" icon_state = "ltiger"
color_src = MUTCOLORS color_src = MUTCOLORS
icon = 'icons/mob/mutant_bodyparts.dmi' icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/tails/mam_tails/wolf /datum/sprite_accessory/mam_tails/wolf
name = "Wolf" name = "Wolf"
icon_state = "wolf" icon_state = "wolf"
/datum/sprite_accessory/tails_animated/mam_tails_animated/wolf /datum/sprite_accessory/mam_tails_animated/wolf
name = "Wolf" name = "Wolf"
icon_state = "wolf" icon_state = "wolf"
@@ -5,16 +5,10 @@
icon_state = "none" icon_state = "none"
relevant_layers = null relevant_layers = null
/datum/sprite_accessory/wings/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return (!H.dna.features["wings"] || H.dna.features["wings"] == "None" || (H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) && (!H.wear_suit.species_exception || !is_type_in_list(src, H.wear_suit.species_exception))))
/datum/sprite_accessory/wings_open /datum/sprite_accessory/wings_open
icon = 'icons/mob/wings.dmi' icon = 'icons/mob/wings.dmi'
relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER) relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER)
/datum/sprite_accessory/wings_open/is_not_visible(var/mob/living/carbon/human/H, var/tauric)
return (H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) && (!H.wear_suit.species_exception || !is_type_in_list(src, H.wear_suit.species_exception)) || H.dna.species.mutant_bodyparts["wings"])
/datum/sprite_accessory/wings_open/angel /datum/sprite_accessory/wings_open/angel
name = "Angel" name = "Angel"
icon_state = "angel" icon_state = "angel"
+177 -17
View File
@@ -642,15 +642,106 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
if(!mutant_bodyparts) if(!mutant_bodyparts)
return return
var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD)
var/tauric = mutant_bodyparts["taur"] && H.dna.features["taur"] && H.dna.features["taur"] != "None" var/tauric = mutant_bodyparts["taur"] && H.dna.features["taur"] && H.dna.features["taur"] != "None"
for(var/mutant_part in mutant_bodyparts) if(mutant_bodyparts["tail_lizard"])
var/reference_list = GLOB.mutant_reference_list[mutant_part] if((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric)
if(reference_list) bodyparts_to_add -= "tail_lizard"
var/datum/sprite_accessory/S
S = reference_list[H.dna.features[mutant_part]] if(mutant_bodyparts["waggingtail_lizard"])
if(!S || S.is_not_visible(H, tauric)) if((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric)
bodyparts_to_add -= mutant_part bodyparts_to_add -= "waggingtail_lizard"
else if (mutant_bodyparts["tail_lizard"])
bodyparts_to_add -= "waggingtail_lizard"
if(mutant_bodyparts["tail_human"])
if((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric)
bodyparts_to_add -= "tail_human"
if(mutant_bodyparts["waggingtail_human"])
if((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric)
bodyparts_to_add -= "waggingtail_human"
else if (mutant_bodyparts["tail_human"])
bodyparts_to_add -= "waggingtail_human"
if(mutant_bodyparts["spines"])
if(!H.dna.features["spines"] || H.dna.features["spines"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR))
bodyparts_to_add -= "spines"
if(mutant_bodyparts["waggingspines"])
if(!H.dna.features["spines"] || H.dna.features["spines"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR))
bodyparts_to_add -= "waggingspines"
else if (mutant_bodyparts["tail"])
bodyparts_to_add -= "waggingspines"
if(mutant_bodyparts["snout"]) //Take a closer look at that snout!
if((H.wear_mask && (H.wear_mask.flags_inv & HIDESNOUT)) || (H.head && (H.head.flags_inv & HIDESNOUT)) || !HD || HD.status == BODYPART_ROBOTIC)
bodyparts_to_add -= "snout"
if(mutant_bodyparts["frills"])
if(!H.dna.features["frills"] || H.dna.features["frills"] == "None" || H.head && (H.head.flags_inv & HIDEEARS) || !HD || HD.status == BODYPART_ROBOTIC)
bodyparts_to_add -= "frills"
if(mutant_bodyparts["horns"])
if(!H.dna.features["horns"] || H.dna.features["horns"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == BODYPART_ROBOTIC)
bodyparts_to_add -= "horns"
if(mutant_bodyparts["ears"])
if(!H.dna.features["ears"] || H.dna.features["ears"] == "None" || H.head && (H.head.flags_inv & HIDEEARS) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEEARS)) || !HD || HD.status == BODYPART_ROBOTIC)
bodyparts_to_add -= "ears"
if(mutant_bodyparts["wings"])
if(!H.dna.features["wings"] || H.dna.features["wings"] == "None" || (H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) && (!H.wear_suit.species_exception || !is_type_in_list(src, H.wear_suit.species_exception))))
bodyparts_to_add -= "wings"
if(mutant_bodyparts["wings_open"])
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) && (!H.wear_suit.species_exception || !is_type_in_list(src, H.wear_suit.species_exception)))
bodyparts_to_add -= "wings_open"
else if (mutant_bodyparts["wings"])
bodyparts_to_add -= "wings_open"
if(mutant_bodyparts["insect_fluff"])
if(!H.dna.features["insect_fluff"] || H.dna.features["insect_fluff"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
bodyparts_to_add -= "insect_fluff"
//CITADEL EDIT
//Race specific bodyparts:
//Xenos
if(mutant_bodyparts["xenodorsal"])
if(!H.dna.features["xenodorsal"] || H.dna.features["xenodorsal"] == "None" || (H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)))
bodyparts_to_add -= "xenodorsal"
if(mutant_bodyparts["xenohead"])//This is an overlay for different castes using different head crests
if(!H.dna.features["xenohead"] || H.dna.features["xenohead"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == BODYPART_ROBOTIC)
bodyparts_to_add -= "xenohead"
if(mutant_bodyparts["xenotail"])
if(!H.dna.features["xenotail"] || H.dna.features["xenotail"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
bodyparts_to_add -= "xenotail"
//Other Races
if(mutant_bodyparts["mam_tail"])
if((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric)
bodyparts_to_add -= "mam_tail"
if(mutant_bodyparts["mam_waggingtail"])
if((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric)
bodyparts_to_add -= "mam_waggingtail"
else if (mutant_bodyparts["mam_tail"])
bodyparts_to_add -= "mam_waggingtail"
if(mutant_bodyparts["mam_ears"])
if(!H.dna.features["mam_ears"] || H.dna.features["mam_ears"] == "None" || H.head && (H.head.flags_inv & HIDEEARS) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEEARS)) || !HD || HD.status == BODYPART_ROBOTIC)
bodyparts_to_add -= "mam_ears"
if(mutant_bodyparts["mam_snouts"]) //Take a closer look at that snout!
if((H.wear_mask && (H.wear_mask.flags_inv & HIDESNOUT)) || (H.head && (H.head.flags_inv & HIDESNOUT)) || !HD || HD.status == BODYPART_ROBOTIC)
bodyparts_to_add -= "mam_snouts"
if(mutant_bodyparts["taur"])
if(!tauric || (H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)))
bodyparts_to_add -= "taur"
//END EDIT
//Digitigrade legs are stuck in the phantom zone between true limbs and mutant bodyparts. Mainly it just needs more agressive updating than most limbs. //Digitigrade legs are stuck in the phantom zone between true limbs and mutant bodyparts. Mainly it just needs more agressive updating than most limbs.
var/update_needed = FALSE var/update_needed = FALSE
@@ -687,18 +778,76 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
var/list/dna_feature_as_text_string = list() var/list/dna_feature_as_text_string = list()
for(var/bodypart in bodyparts_to_add) for(var/bodypart in bodyparts_to_add)
var/reference_list = GLOB.mutant_reference_list[bodypart] var/datum/sprite_accessory/S
if(reference_list) switch(bodypart)
var/datum/sprite_accessory/S if("tail_lizard")
S = reference_list[H.dna.features[bodypart]] S = GLOB.tails_list_lizard[H.dna.features["tail_lizard"]]
if("waggingtail_lizard")
S = GLOB.animated_tails_list_lizard[H.dna.features["tail_lizard"]]
if("tail_human")
S = GLOB.tails_list_human[H.dna.features["tail_human"]]
if("waggingtail_human")
S = GLOB.animated_tails_list_human[H.dna.features["tail_human"]]
if("spines")
S = GLOB.spines_list[H.dna.features["spines"]]
if("waggingspines")
S = GLOB.animated_spines_list[H.dna.features["spines"]]
if("snout")
S = GLOB.snouts_list[H.dna.features["snout"]]
if("frills")
S = GLOB.frills_list[H.dna.features["frills"]]
if("horns")
S = GLOB.horns_list[H.dna.features["horns"]]
if("ears")
S = GLOB.ears_list[H.dna.features["ears"]]
if("body_markings")
S = GLOB.body_markings_list[H.dna.features["body_markings"]]
if("wings")
S = GLOB.wings_list[H.dna.features["wings"]]
if("wingsopen")
S = GLOB.wings_open_list[H.dna.features["wings"]]
if("deco_wings")
S = GLOB.deco_wings_list[H.dna.features["deco_wings"]]
if("legs")
S = GLOB.legs_list[H.dna.features["legs"]]
if("insect_wings")
S = GLOB.insect_wings_list[H.dna.features["insect_wings"]]
if("insect_fluff")
S = GLOB.insect_fluffs_list[H.dna.features["insect_fluff"]]
if("insect_markings")
S = GLOB.insect_markings_list[H.dna.features["insect_markings"]]
if("caps")
S = GLOB.caps_list[H.dna.features["caps"]]
if("ipc_screen")
S = GLOB.ipc_screens_list[H.dna.features["ipc_screen"]]
if("ipc_antenna")
S = GLOB.ipc_antennas_list[H.dna.features["ipc_antenna"]]
if("mam_tail")
S = GLOB.mam_tails_list[H.dna.features["mam_tail"]]
if("mam_waggingtail")
S = GLOB.mam_tails_animated_list[H.dna.features["mam_tail"]]
if("mam_body_markings")
S = GLOB.mam_body_markings_list[H.dna.features["mam_body_markings"]]
if("mam_ears")
S = GLOB.mam_ears_list[H.dna.features["mam_ears"]]
if("mam_snouts")
S = GLOB.mam_snouts_list[H.dna.features["mam_snouts"]]
if("taur")
S = GLOB.taur_list[H.dna.features["taur"]]
if("xenodorsal")
S = GLOB.xeno_dorsal_list[H.dna.features["xenodorsal"]]
if("xenohead")
S = GLOB.xeno_head_list[H.dna.features["xenohead"]]
if("xenotail")
S = GLOB.xeno_tail_list[H.dna.features["xenotail"]]
if(!S || S.icon_state == "none") if(!S || S.icon_state == "none")
continue continue
for(var/L in S.relevant_layers) for(var/L in S.relevant_layers)
LAZYADD(relevant_layers["[L]"], S) LAZYADD(relevant_layers["[L]"], S)
if(!S.mutant_part_string) if(!S.mutant_part_string)
dna_feature_as_text_string[S] = bodypart dna_feature_as_text_string[S] = bodypart
var/static/list/layer_text = list( var/static/list/layer_text = list(
"[BODY_BEHIND_LAYER]" = "BEHIND", "[BODY_BEHIND_LAYER]" = "BEHIND",
@@ -1897,8 +2046,17 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
return return
/** /**
* The human species version of [/mob/living/carbon/proc/get_biological_state]. Depends on the HAS_FLESH and HAS_BONE species traits, having bones lets you have bone wounds, having flesh lets you have burn, slash, and piercing wounds * The human species version of [/mob/living/carbon/proc/get_biological_state]. Depends on the HAS_FLESH and HAS_BONE species traits, having bones lets you have bone wounds, having flesh lets you have burn, slash, and piercing wounds
*/ */
/datum/species/proc/get_biological_state(mob/living/carbon/human/H) /datum/species/proc/get_biological_state(mob/living/carbon/human/H)
. = BIO_INORGANIC . = BIO_INORGANIC
if(HAS_FLESH in species_traits) if(HAS_FLESH in species_traits)
@@ -1914,6 +2072,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
if(HAS_TRAIT(H, TRAIT_NOBREATH)) if(HAS_TRAIT(H, TRAIT_NOBREATH))
return TRUE return TRUE
/datum/species/proc/handle_environment(datum/gas_mixture/environment, mob/living/carbon/human/H) /datum/species/proc/handle_environment(datum/gas_mixture/environment, mob/living/carbon/human/H)
if(!environment) if(!environment)
return return
@@ -2105,6 +2264,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
/datum/species/proc/spec_stun(mob/living/carbon/human/H,amount) /datum/species/proc/spec_stun(mob/living/carbon/human/H,amount)
if(H) if(H)
stop_wagging_tail(H) stop_wagging_tail(H)
. = stunmod * H.physiology.stun_mod * amount . = stunmod * H.physiology.stun_mod * amount
////////////// //////////////
@@ -504,7 +504,7 @@
else if (select_alteration == "Ears") else if (select_alteration == "Ears")
var/list/snowflake_ears_list = list("Normal" = null) var/list/snowflake_ears_list = list("Normal" = null)
for(var/path in GLOB.mam_ears_list) for(var/path in GLOB.mam_ears_list)
var/datum/sprite_accessory/ears/mam_ears/instance = GLOB.mam_ears_list[path] var/datum/sprite_accessory/mam_ears/instance = GLOB.mam_ears_list[path]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey))) if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey)))
@@ -518,7 +518,7 @@
else if (select_alteration == "Snout") else if (select_alteration == "Snout")
var/list/snowflake_snouts_list = list("Normal" = null) var/list/snowflake_snouts_list = list("Normal" = null)
for(var/path in GLOB.mam_snouts_list) for(var/path in GLOB.mam_snouts_list)
var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.mam_snouts_list[path] var/datum/sprite_accessory/mam_snouts/instance = GLOB.mam_snouts_list[path]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey))) if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey)))
@@ -549,7 +549,7 @@
else if (select_alteration == "Tail") else if (select_alteration == "Tail")
var/list/snowflake_tails_list = list("Normal" = null) var/list/snowflake_tails_list = list("Normal" = null)
for(var/path in GLOB.mam_tails_list) for(var/path in GLOB.mam_tails_list)
var/datum/sprite_accessory/tails/mam_tails/instance = GLOB.mam_tails_list[path] var/datum/sprite_accessory/mam_tails/instance = GLOB.mam_tails_list[path]
if(istype(instance, /datum/sprite_accessory)) if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance var/datum/sprite_accessory/S = instance
if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey))) if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey)))
@@ -57,10 +57,89 @@
..() ..()
/datum/species/plasmaman/before_equip_job(datum/job/J, mob/living/carbon/human/H, visualsOnly = FALSE) /datum/species/plasmaman/before_equip_job(datum/job/J, mob/living/carbon/human/H, visualsOnly = FALSE)
var/current_job = J?.title
var/datum/outfit/plasmaman/O = new /datum/outfit/plasmaman var/datum/outfit/plasmaman/O = new /datum/outfit/plasmaman
if(J) switch(current_job)
if(J.plasma_outfit) if("Chaplain")
O = new J.plasma_outfit O = new /datum/outfit/plasmaman/chaplain
if("Curator")
O = new /datum/outfit/plasmaman/curator
if("Janitor")
O = new /datum/outfit/plasmaman/janitor
if("Botanist")
O = new /datum/outfit/plasmaman/botany
if("Bartender", "Lawyer")
O = new /datum/outfit/plasmaman/bar
if("Cook")
O = new /datum/outfit/plasmaman/chef
if("Security Officer")
O = new /datum/outfit/plasmaman/security
if("Detective")
O = new /datum/outfit/plasmaman/detective
if("Warden")
O = new /datum/outfit/plasmaman/warden
if("Cargo Technician", "Quartermaster")
O = new /datum/outfit/plasmaman/cargo
if("Shaft Miner")
O = new /datum/outfit/plasmaman/mining
if("Medical Doctor")
O = new /datum/outfit/plasmaman/medical
if("Chemist")
O = new /datum/outfit/plasmaman/chemist
if("Geneticist")
O = new /datum/outfit/plasmaman/genetics
if("Roboticist")
O = new /datum/outfit/plasmaman/robotics
if("Virologist")
O = new /datum/outfit/plasmaman/viro
if("Scientist")
O = new /datum/outfit/plasmaman/science
if("Station Engineer")
O = new /datum/outfit/plasmaman/engineering
if("Atmospheric Technician")
O = new /datum/outfit/plasmaman/atmospherics
if("Captain")
O = new /datum/outfit/plasmaman/captain
if("Head of Personnel")
O = new /datum/outfit/plasmaman/hop
if("Head of Security")
O = new /datum/outfit/plasmaman/hos
if("Chief Engineer")
O = new /datum/outfit/plasmaman/ce
if("Chief Medical Officer")
O = new /datum/outfit/plasmaman/cmo
if("Research Director")
O = new /datum/outfit/plasmaman/rd
if("Mime")
O = new /datum/outfit/plasmaman/mime
if("Clown")
O = new /datum/outfit/plasmaman/clown
H.equipOutfit(O, visualsOnly) H.equipOutfit(O, visualsOnly)
H.internal = H.get_item_for_held_index(2) H.internal = H.get_item_for_held_index(2)
@@ -82,11 +82,13 @@
M.AddSpell(SW) M.AddSpell(SW)
shadowwalk = SW shadowwalk = SW
/obj/item/organ/brain/nightmare/Remove(special = FALSE) /obj/item/organ/brain/nightmare/Remove(special = FALSE)
if(shadowwalk && owner) if(shadowwalk && owner)
owner.RemoveSpell(shadowwalk) owner.RemoveSpell(shadowwalk)
return ..() return ..()
/obj/item/organ/heart/nightmare /obj/item/organ/heart/nightmare
name = "heart of darkness" name = "heart of darkness"
desc = "An alien organ that twists and writhes when exposed to light." desc = "An alien organ that twists and writhes when exposed to light."
@@ -24,7 +24,7 @@
burnmod = 1 burnmod = 1
..() ..()
/datum/species/skeleton/check_roundstart_eligible() /datum/species/skeleton/greater/check_roundstart_eligible()
if(SSevents.holidays && SSevents.holidays[HALLOWEEN]) if(SSevents.holidays && SSevents.holidays[HALLOWEEN])
return TRUE return TRUE
return ..() return ..()
@@ -100,12 +100,14 @@
else else
return ..() return ..()
/datum/species/synth/handle_body(mob/living/carbon/human/H) /datum/species/synth/handle_body(mob/living/carbon/human/H)
if(fake_species) if(fake_species)
fake_species.handle_body(H) fake_species.handle_body(H)
else else
return ..() return ..()
/datum/species/synth/handle_mutant_bodyparts(mob/living/carbon/human/H, forced_colour) /datum/species/synth/handle_mutant_bodyparts(mob/living/carbon/human/H, forced_colour)
if(fake_species) if(fake_species)
fake_species.handle_body(H,forced_colour) fake_species.handle_body(H,forced_colour)
@@ -313,7 +313,7 @@
/obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/insectguts, /obj/effect/decal/cleanable/insectguts,
/obj/effect/decal/cleanable/semen, /obj/effect/decal/cleanable/semen,
/obj/effect/decal/cleanable/semen/femcum, /obj/effect/decal/cleanable/femcum,
/obj/effect/decal/cleanable/generic, /obj/effect/decal/cleanable/generic,
/obj/effect/decal/cleanable/glass,, /obj/effect/decal/cleanable/glass,,
/obj/effect/decal/cleanable/cobweb, /obj/effect/decal/cleanable/cobweb,
@@ -2218,7 +2218,6 @@
color = "#FFFFFF" // rgb: 255, 255, 255 color = "#FFFFFF" // rgb: 255, 255, 255
can_synth = FALSE can_synth = FALSE
nutriment_factor = 0.5 * REAGENTS_METABOLISM nutriment_factor = 0.5 * REAGENTS_METABOLISM
var/decal_path = /obj/effect/decal/cleanable/semen
/datum/reagent/consumable/semen/reaction_turf(turf/T, reac_volume) /datum/reagent/consumable/semen/reaction_turf(turf/T, reac_volume)
if(!istype(T)) if(!istype(T))
@@ -2228,7 +2227,7 @@
var/obj/effect/decal/cleanable/semen/S = locate() in T var/obj/effect/decal/cleanable/semen/S = locate() in T
if(!S) if(!S)
S = new decal_path(T) S = new(T)
if(data["blood_DNA"]) if(data["blood_DNA"])
S.add_blood_DNA(list(data["blood_DNA"] = data["blood_type"])) S.add_blood_DNA(list(data["blood_DNA"] = data["blood_type"]))
@@ -2252,20 +2251,51 @@
blood_DNA |= S.blood_DNA blood_DNA |= S.blood_DNA
return ..() return ..()
/datum/reagent/consumable/semen/femcum /datum/reagent/consumable/femcum
name = "Female Ejaculate" name = "Female Ejaculate"
description = "Vaginal lubricant found in most mammals and other animals of similar nature. Where you found this is your own business." description = "Vaginal lubricant found in most mammals and other animals of similar nature. Where you found this is your own business."
taste_description = "something with a tang" // wew coders who haven't eaten out a girl. taste_description = "something with a tang" // wew coders who haven't eaten out a girl.
taste_mult = 2
data = list("donor"=null,"viruses"=null,"donor_DNA"=null,"blood_type"=null,"resistances"=null,"trace_chem"=null,"mind"=null,"ckey"=null,"gender"=null,"real_name"=null)
reagent_state = LIQUID
color = "#AAAAAA77" color = "#AAAAAA77"
decal_path = /obj/effect/decal/cleanable/semen/femcum can_synth = FALSE
nutriment_factor = 0.5 * REAGENTS_METABOLISM
/obj/effect/decal/cleanable/semen/femcum /obj/effect/decal/cleanable/femcum
name = "female ejaculate" name = "female ejaculate"
desc = null
gender = PLURAL
density = 0
layer = ABOVE_NORMAL_TURF_LAYER
icon = 'icons/obj/genitals/effects.dmi'
icon_state = "fem1" icon_state = "fem1"
random_icon_states = list("fem1", "fem2", "fem3", "fem4") random_icon_states = list("fem1", "fem2", "fem3", "fem4")
blood_state = null blood_state = null
bloodiness = null bloodiness = null
/obj/effect/decal/cleanable/femcum/Initialize(mapload)
. = ..()
dir = GLOB.cardinals
add_blood_DNA(list("Non-human DNA" = "A+"))
/obj/effect/decal/cleanable/femcum/replace_decal(obj/effect/decal/cleanable/femcum/F)
if(F.blood_DNA)
blood_DNA |= F.blood_DNA
return ..()
/datum/reagent/consumable/femcum/reaction_turf(turf/T, reac_volume)
if(!istype(T))
return
if(reac_volume < 10)
return
var/obj/effect/decal/cleanable/femcum/S = locate() in T
if(!S)
S = new(T)
if(data["blood_DNA"])
S.add_blood_DNA(list(data["blood_DNA"] = data["blood_type"]))
/datum/reagent/determination /datum/reagent/determination
name = "Determination" name = "Determination"
description = "For when you need to push on a little more. Do NOT allow near plants." description = "For when you need to push on a little more. Do NOT allow near plants."