From 8370a31942362dd60a5ba26575d026f0a5fdcca8 Mon Sep 17 00:00:00 2001 From: Hatterhat Date: Mon, 10 Aug 2020 12:12:32 -0500 Subject: [PATCH 01/15] funny adminspawn wound bullets --- .../projectiles/ammunition/ballistic/revolver.dm | 8 ++++++-- .../projectiles/boxes_magazines/ammo_boxes.dm | 5 +++++ .../projectiles/projectile/bullets/revolver.dm | 13 ++++++++++++- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/code/modules/projectiles/ammunition/ballistic/revolver.dm b/code/modules/projectiles/ammunition/ballistic/revolver.dm index 693b258e3d..c13a3c953d 100644 --- a/code/modules/projectiles/ammunition/ballistic/revolver.dm +++ b/code/modules/projectiles/ammunition/ballistic/revolver.dm @@ -14,9 +14,13 @@ /obj/item/ammo_casing/a357/match name = ".357 match bullet casing" desc = "A .357 bullet casing, manufactured to exceedingly high standards." - caliber = "357" projectile_type = /obj/item/projectile/bullet/a357/match +/obj/item/ammo_casing/a357/dumdum + name = ".357 DumDum bullet casing" + desc = "A .357 bullet casing. Usage of this ammunition will constitute a war crime in your area." + projectile_type = /obj/item/projectile/bullet/a357/dumdum + // 7.62x38mmR (Nagant Revolver) /obj/item/ammo_casing/n762 @@ -68,4 +72,4 @@ /obj/item/ammo_casing/c38/dumdum name = ".38 DumDum bullet casing" desc = "A .38 DumDum bullet casing." - projectile_type = /obj/item/projectile/bullet/c38/dumdum \ No newline at end of file + projectile_type = /obj/item/projectile/bullet/c38/dumdum diff --git a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm index 987efc0404..41b2ce8bf9 100644 --- a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm +++ b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm @@ -16,6 +16,11 @@ name = "speed loader (.357 AP)" ammo_type = /obj/item/ammo_casing/a357/ap +/obj/item/ammo_box/a357/dumdum + name = "speed loader (.357 DumDum)" + desc = "Designed to quickly reload revolvers. Usage of these rounds will constitute a war crime in your area." + ammo_type = /obj/item/ammo_casing/a357/dumdum + /obj/item/ammo_box/c38 name = "speed loader (.38 rubber)" desc = "Designed to quickly reload revolvers." diff --git a/code/modules/projectiles/projectile/bullets/revolver.dm b/code/modules/projectiles/projectile/bullets/revolver.dm index 95d43ba1ce..4eec288040 100644 --- a/code/modules/projectiles/projectile/bullets/revolver.dm +++ b/code/modules/projectiles/projectile/bullets/revolver.dm @@ -126,4 +126,15 @@ ricochet_auto_aim_angle = 50 ricochet_auto_aim_range = 6 ricochet_incidence_leeway = 80 - ricochet_decay_chance = 1 \ No newline at end of file + ricochet_decay_chance = 1 + +/obj/item/projectile/bullet/a357/dumdum + name = ".357 DumDum bullet" // the warcrime bullet + damage = 40 + armour_penetration = -20 + wound_bonus = 30 + bare_wound_bonus = 30 + sharpness = SHARP_EDGED + embedding = list(embed_chance=80, fall_chance=3, jostle_chance=4, ignore_throwspeed_threshold=TRUE, pain_stam_pct=0.4, pain_mult=5, jostle_pain_mult=6, rip_time=10) + wound_falloff_tile = -1 + embed_falloff_tile = -5 From eeefc1cbaaed5854b53109b16278d6c5c1aad7f0 Mon Sep 17 00:00:00 2001 From: Hatterhat Date: Tue, 11 Aug 2020 16:01:29 -0500 Subject: [PATCH 02/15] heho woundies --- code/modules/projectiles/projectile/bullets/revolver.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/projectiles/projectile/bullets/revolver.dm b/code/modules/projectiles/projectile/bullets/revolver.dm index 4eec288040..ec3cadc31a 100644 --- a/code/modules/projectiles/projectile/bullets/revolver.dm +++ b/code/modules/projectiles/projectile/bullets/revolver.dm @@ -132,9 +132,9 @@ name = ".357 DumDum bullet" // the warcrime bullet damage = 40 armour_penetration = -20 - wound_bonus = 30 - bare_wound_bonus = 30 + wound_bonus = 45 + bare_wound_bonus = 45 sharpness = SHARP_EDGED - embedding = list(embed_chance=80, fall_chance=3, jostle_chance=4, ignore_throwspeed_threshold=TRUE, pain_stam_pct=0.4, pain_mult=5, jostle_pain_mult=6, rip_time=10) + embedding = list(embed_chance=90, fall_chance=2, jostle_chance=5, ignore_throwspeed_threshold=TRUE, pain_stam_pct=0.4, pain_mult=5, jostle_pain_mult=6, rip_time=10) wound_falloff_tile = -1 embed_falloff_tile = -5 From f5300750b5da677919de6e9df5702abdd9a5d6e6 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Mon, 17 Aug 2020 03:18:36 +0100 Subject: [PATCH 03/15] Revert "[TESTMERGE ONLY] FUCK" --- code/__DEFINES/pool.dm | 2 +- code/__HELPERS/global_lists.dm | 8 +- code/__HELPERS/mobs.dm | 14 +- code/_globalvars/lists/flavor_misc.dm | 35 ++++ .../diseases/advance/symptoms/species.dm | 1 - code/datums/dna.dm | 4 +- code/modules/arousal/organs/womb.dm | 2 +- code/modules/client/preferences.dm | 12 +- code/modules/jobs/job_types/_job.dm | 1 + .../jobs/job_types/atmospheric_technician.dm | 1 + code/modules/jobs/job_types/bartender.dm | 1 + code/modules/jobs/job_types/botanist.dm | 1 + code/modules/jobs/job_types/captain.dm | 1 + .../jobs/job_types/cargo_technician.dm | 1 + code/modules/jobs/job_types/chaplain.dm | 1 + code/modules/jobs/job_types/chemist.dm | 1 + code/modules/jobs/job_types/chief_engineer.dm | 1 + .../jobs/job_types/chief_medical_officer.dm | 1 + code/modules/jobs/job_types/clown.dm | 1 + code/modules/jobs/job_types/cook.dm | 1 + code/modules/jobs/job_types/curator.dm | 1 + code/modules/jobs/job_types/detective.dm | 1 + code/modules/jobs/job_types/geneticist.dm | 1 + .../jobs/job_types/head_of_personnel.dm | 1 + .../jobs/job_types/head_of_security.dm | 2 + code/modules/jobs/job_types/janitor.dm | 1 + code/modules/jobs/job_types/lawyer.dm | 1 + code/modules/jobs/job_types/medical_doctor.dm | 1 + code/modules/jobs/job_types/mime.dm | 1 + .../jobs/job_types/research_director.dm | 1 + code/modules/jobs/job_types/roboticist.dm | 1 + code/modules/jobs/job_types/scientist.dm | 1 + .../jobs/job_types/security_officer.dm | 1 + code/modules/jobs/job_types/shaft_miner.dm | 1 + .../jobs/job_types/station_engineer.dm | 1 + code/modules/jobs/job_types/virologist.dm | 1 + code/modules/jobs/job_types/warden.dm | 1 + .../sprite_accessories/Citadel_Snowflake.dm | 16 +- .../sprite_accessories/_sprite_accessories.dm | 3 + .../sprite_accessories/alienpeople.dm | 10 + .../sprite_accessories/body_markings.dm | 3 + .../new_player/sprite_accessories/ears.dm | 74 ++++--- .../new_player/sprite_accessories/frills.dm | 4 + .../new_player/sprite_accessories/horns.dm | 4 + .../sprite_accessories/legs_and_taurs.dm | 3 + .../new_player/sprite_accessories/snouts.dm | 110 +++++----- .../new_player/sprite_accessories/spines.dm | 5 + .../new_player/sprite_accessories/synthliz.dm | 12 +- .../new_player/sprite_accessories/tails.dm | 188 +++++++++-------- .../new_player/sprite_accessories/wings.dm | 6 + .../mob/living/carbon/human/species.dm | 194 ++---------------- .../carbon/human/species_types/jellypeople.dm | 6 +- .../carbon/human/species_types/plasmamen.dm | 85 +------- .../human/species_types/shadowpeople.dm | 2 - .../carbon/human/species_types/skeletons.dm | 2 +- .../carbon/human/species_types/synthliz.dm | 2 +- .../carbon/human/species_types/synths.dm | 2 - .../mob/living/simple_animal/bot/cleanbot.dm | 2 +- .../chemistry/reagents/other_reagents.dm | 40 +--- 59 files changed, 369 insertions(+), 512 deletions(-) diff --git a/code/__DEFINES/pool.dm b/code/__DEFINES/pool.dm index 64bbd20b19..1bf39dcb1d 100644 --- a/code/__DEFINES/pool.dm +++ b/code/__DEFINES/pool.dm @@ -8,5 +8,5 @@ GLOBAL_LIST_INIT(blacklisted_pool_reagents, list( /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/consumable/femcum, /datum/reagent/consumable/semen //NO. + /datum/reagent/consumable/semen //NO. )) diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index d66e83d651..1119ef44ed 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -37,10 +37,10 @@ //CIT CHANGES START HERE, ADDS SNOWFLAKE BODYPARTS AND MORE //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_tails, GLOB.mam_tails_list) - init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, GLOB.mam_ears_list) - init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_snouts, GLOB.mam_snouts_list) - init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails_animated, GLOB.mam_tails_animated_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/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/snouts/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/taur, GLOB.taur_list) //xeno parts (hiss?) init_sprite_accessory_subtypes(/datum/sprite_accessory/xeno_head, GLOB.xeno_head_list) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index c4964022e5..52e26b67e7 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -93,16 +93,16 @@ if(!GLOB.mam_body_markings_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list) if(!GLOB.mam_tails_list.len) - init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, GLOB.mam_tails_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/mam_tails, GLOB.mam_tails_list) if(!GLOB.mam_ears_list.len) - init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, GLOB.mam_ears_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/ears/mam_ears, GLOB.mam_ears_list) if(!GLOB.mam_snouts_list.len) - init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_snouts, GLOB.mam_snouts_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts/mam_snouts, GLOB.mam_snouts_list) //snowflake check so people's ckey features don't get randomly put on unmonkeys/spawns var/list/snowflake_mam_tails_list = list() for(var/mtpath in GLOB.mam_tails_list) - var/datum/sprite_accessory/mam_tails/instance = GLOB.mam_tails_list[mtpath] + var/datum/sprite_accessory/tails/mam_tails/instance = GLOB.mam_tails_list[mtpath] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) @@ -120,7 +120,7 @@ snowflake_markings_list[S.name] = mmpath var/list/snowflake_ears_list = list() for(var/mepath in GLOB.mam_ears_list) - var/datum/sprite_accessory/mam_ears/instance = GLOB.mam_ears_list[mepath] + var/datum/sprite_accessory/ears/mam_ears/instance = GLOB.mam_ears_list[mepath] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) @@ -129,7 +129,7 @@ snowflake_ears_list[S.name] = mepath var/list/snowflake_mam_snouts_list = list() for(var/mspath in GLOB.mam_snouts_list) - var/datum/sprite_accessory/mam_snouts/instance = GLOB.mam_snouts_list[mspath] + var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.mam_snouts_list[mspath] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) @@ -138,7 +138,7 @@ snowflake_mam_snouts_list[S.name] = mspath var/list/snowflake_ipc_antenna_list = list() for(var/mspath in GLOB.ipc_antennas_list) - var/datum/sprite_accessory/mam_snouts/instance = GLOB.ipc_antennas_list[mspath] + var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.ipc_antennas_list[mspath] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm index 7c2ebc5f0c..1a0afc2c2a 100644 --- a/code/_globalvars/lists/flavor_misc.dm +++ b/code/_globalvars/lists/flavor_misc.dm @@ -40,6 +40,41 @@ GLOBAL_LIST_EMPTY(insect_fluffs_list) GLOBAL_LIST_EMPTY(insect_markings_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_accessories_list, list("ghost")) //stores the ghost forms that support hair and other such things diff --git a/code/datums/diseases/advance/symptoms/species.dm b/code/datums/diseases/advance/symptoms/species.dm index 49a3cf8d07..2d5255842b 100644 --- a/code/datums/diseases/advance/symptoms/species.dm +++ b/code/datums/diseases/advance/symptoms/species.dm @@ -31,4 +31,3 @@ /datum/symptom/inorganic_adaptation/OnRemove(datum/disease/advance/A) A.infectable_biotypes &= ~MOB_MINERAL - diff --git a/code/datums/dna.dm b/code/datums/dna.dm index de5c1ece91..9486029fdd 100644 --- a/code/datums/dna.dm +++ b/code/datums/dna.dm @@ -137,10 +137,10 @@ L[DNA_COLOR_TWO_BLOCK] = sanitize_hexcolor(features["mcolor2"], 6) L[DNA_COLOR_THREE_BLOCK] = sanitize_hexcolor(features["mcolor3"], 6) if(!GLOB.mam_tails_list.len) - init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, GLOB.mam_tails_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/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) if(!GLOB.mam_ears_list.len) - init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, GLOB.mam_ears_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/ears/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) if(!GLOB.mam_body_markings_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list) diff --git a/code/modules/arousal/organs/womb.dm b/code/modules/arousal/organs/womb.dm index 386f407a26..e89d4329aa 100644 --- a/code/modules/arousal/organs/womb.dm +++ b/code/modules/arousal/organs/womb.dm @@ -6,5 +6,5 @@ zone = BODY_ZONE_PRECISE_GROIN slot = ORGAN_SLOT_WOMB genital_flags = GENITAL_INTERNAL|GENITAL_FUID_PRODUCTION - fluid_id = /datum/reagent/consumable/femcum + fluid_id = /datum/reagent/consumable/semen/femcum linked_organ_slot = ORGAN_SLOT_VAGINA diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 017a25db34..480ebda4f8 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -791,9 +791,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "" dat += "
" - + dat += "
" - + if(!length(GLOB.loadout_categories[gear_category])) dat += "No subcategories detected. Something is horribly wrong!" else @@ -1636,7 +1636,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if("mam_tail") var/list/snowflake_tails_list = list() for(var/path in GLOB.mam_tails_list) - var/datum/sprite_accessory/mam_tails/instance = GLOB.mam_tails_list[path] + var/datum/sprite_accessory/tails/mam_tails/instance = GLOB.mam_tails_list[path] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance 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") var/list/snowflake_snouts_list = list() for(var/path in GLOB.snouts_list) - var/datum/sprite_accessory/mam_snouts/instance = GLOB.snouts_list[path] + var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.snouts_list[path] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance 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") var/list/snowflake_mam_snouts_list = list() for(var/path in GLOB.mam_snouts_list) - var/datum/sprite_accessory/mam_snouts/instance = GLOB.mam_snouts_list[path] + var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.mam_snouts_list[path] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance 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") var/list/snowflake_ears_list = list() for(var/path in GLOB.mam_ears_list) - var/datum/sprite_accessory/mam_ears/instance = GLOB.mam_ears_list[path] + var/datum/sprite_accessory/ears/mam_ears/instance = GLOB.mam_ears_list[path] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id)) diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index bd36218211..1238b37919 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -46,6 +46,7 @@ var/minimal_player_age = 0 var/outfit = null + var/plasma_outfit = null //the outfit given to plasmamen var/exp_requirements = 0 diff --git a/code/modules/jobs/job_types/atmospheric_technician.dm b/code/modules/jobs/job_types/atmospheric_technician.dm index 1962b8e8a9..bff56d1d16 100644 --- a/code/modules/jobs/job_types/atmospheric_technician.dm +++ b/code/modules/jobs/job_types/atmospheric_technician.dm @@ -12,6 +12,7 @@ exp_type = EXP_TYPE_CREW 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_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_ATMOSPHERICS, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/bartender.dm b/code/modules/jobs/job_types/bartender.dm index e5cd015460..8290adbbd7 100644 --- a/code/modules/jobs/job_types/bartender.dm +++ b/code/modules/jobs/job_types/bartender.dm @@ -11,6 +11,7 @@ exp_type_department = EXP_TYPE_SERVICE // This is so the jobs menu can work properly 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) minimal_access = list(ACCESS_BAR, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/botanist.dm b/code/modules/jobs/job_types/botanist.dm index 65f3e7ca48..4c91f87791 100644 --- a/code/modules/jobs/job_types/botanist.dm +++ b/code/modules/jobs/job_types/botanist.dm @@ -10,6 +10,7 @@ selection_color = "#bbe291" outfit = /datum/outfit/job/botanist + plasma_outfit = /datum/outfit/plasmaman/botany access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_HYDROPONICS, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/captain.dm b/code/modules/jobs/job_types/captain.dm index 3733658c33..047a07062d 100644 --- a/code/modules/jobs/job_types/captain.dm +++ b/code/modules/jobs/job_types/captain.dm @@ -17,6 +17,7 @@ outfit = /datum/outfit/job/captain + plasma_outfit = /datum/outfit/plasmaman/captain access = list() //See get_access() minimal_access = list() //See get_access() diff --git a/code/modules/jobs/job_types/cargo_technician.dm b/code/modules/jobs/job_types/cargo_technician.dm index 840af56a0e..1f87a5265d 100644 --- a/code/modules/jobs/job_types/cargo_technician.dm +++ b/code/modules/jobs/job_types/cargo_technician.dm @@ -10,6 +10,7 @@ selection_color = "#ca8f55" 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_MINING_STATION, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/chaplain.dm b/code/modules/jobs/job_types/chaplain.dm index 5f66519365..a9e891a303 100644 --- a/code/modules/jobs/job_types/chaplain.dm +++ b/code/modules/jobs/job_types/chaplain.dm @@ -10,6 +10,7 @@ selection_color = "#dddddd" outfit = /datum/outfit/job/chaplain + plasma_outfit = /datum/outfit/plasmaman/chaplain access = list(ACCESS_MORGUE, ACCESS_CHAPEL_OFFICE, ACCESS_CREMATORIUM, ACCESS_THEATRE) minimal_access = list(ACCESS_MORGUE, ACCESS_CHAPEL_OFFICE, ACCESS_CREMATORIUM, ACCESS_THEATRE) diff --git a/code/modules/jobs/job_types/chemist.dm b/code/modules/jobs/job_types/chemist.dm index b2699071e3..6d4204d041 100644 --- a/code/modules/jobs/job_types/chemist.dm +++ b/code/modules/jobs/job_types/chemist.dm @@ -12,6 +12,7 @@ exp_requirements = 60 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) minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_CHEMISTRY, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/chief_engineer.dm b/code/modules/jobs/job_types/chief_engineer.dm index d8df767a9f..18be8c9835 100644 --- a/code/modules/jobs/job_types/chief_engineer.dm +++ b/code/modules/jobs/job_types/chief_engineer.dm @@ -17,6 +17,7 @@ exp_type_department = EXP_TYPE_ENGINEERING 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_EXTERNAL_AIRLOCKS, ACCESS_ATMOSPHERICS, ACCESS_EVA, diff --git a/code/modules/jobs/job_types/chief_medical_officer.dm b/code/modules/jobs/job_types/chief_medical_officer.dm index 9cbc15ca28..627a7a2ca1 100644 --- a/code/modules/jobs/job_types/chief_medical_officer.dm +++ b/code/modules/jobs/job_types/chief_medical_officer.dm @@ -17,6 +17,7 @@ exp_type_department = EXP_TYPE_MEDICAL 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_CHEMISTRY, ACCESS_VIROLOGY, ACCESS_CMO, ACCESS_SURGERY, ACCESS_RC_ANNOUNCE, diff --git a/code/modules/jobs/job_types/clown.dm b/code/modules/jobs/job_types/clown.dm index 7ad7148614..dc2f60434c 100644 --- a/code/modules/jobs/job_types/clown.dm +++ b/code/modules/jobs/job_types/clown.dm @@ -10,6 +10,7 @@ selection_color = "#dddddd" outfit = /datum/outfit/job/clown + plasma_outfit = /datum/outfit/plasmaman/clown access = list(ACCESS_THEATRE) minimal_access = list(ACCESS_THEATRE) diff --git a/code/modules/jobs/job_types/cook.dm b/code/modules/jobs/job_types/cook.dm index 5a5916cb7e..666ee8f036 100644 --- a/code/modules/jobs/job_types/cook.dm +++ b/code/modules/jobs/job_types/cook.dm @@ -11,6 +11,7 @@ var/cooks = 0 //Counts cooks amount outfit = /datum/outfit/job/cook + plasma_outfit = /datum/outfit/plasmaman/chef access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/curator.dm b/code/modules/jobs/job_types/curator.dm index 47bfd4914a..254fc15bd4 100644 --- a/code/modules/jobs/job_types/curator.dm +++ b/code/modules/jobs/job_types/curator.dm @@ -10,6 +10,7 @@ selection_color = "#dddddd" outfit = /datum/outfit/job/curator + plasma_outfit = /datum/outfit/plasmaman/curator access = list(ACCESS_LIBRARY) minimal_access = list(ACCESS_LIBRARY, ACCESS_CONSTRUCTION, ACCESS_MINING_STATION) diff --git a/code/modules/jobs/job_types/detective.dm b/code/modules/jobs/job_types/detective.dm index 463113f14c..65724765e1 100644 --- a/code/modules/jobs/job_types/detective.dm +++ b/code/modules/jobs/job_types/detective.dm @@ -14,6 +14,7 @@ exp_type = EXP_TYPE_CREW 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) minimal_access = list(ACCESS_SEC_DOORS, ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_COURT, ACCESS_BRIG, ACCESS_WEAPONS, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/geneticist.dm b/code/modules/jobs/job_types/geneticist.dm index a40ca0fca3..5ff1bebfbf 100644 --- a/code/modules/jobs/job_types/geneticist.dm +++ b/code/modules/jobs/job_types/geneticist.dm @@ -12,6 +12,7 @@ exp_requirements = 60 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) minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/head_of_personnel.dm b/code/modules/jobs/job_types/head_of_personnel.dm index 8015c19c36..41fb4b99da 100644 --- a/code/modules/jobs/job_types/head_of_personnel.dm +++ b/code/modules/jobs/job_types/head_of_personnel.dm @@ -17,6 +17,7 @@ exp_type_department = EXP_TYPE_SERVICE outfit = /datum/outfit/job/hop + plasma_outfit = /datum/outfit/plasmaman/hop 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, diff --git a/code/modules/jobs/job_types/head_of_security.dm b/code/modules/jobs/job_types/head_of_security.dm index 3d7d07d894..cfd8d7f6c0 100644 --- a/code/modules/jobs/job_types/head_of_security.dm +++ b/code/modules/jobs/job_types/head_of_security.dm @@ -17,6 +17,8 @@ exp_type_department = EXP_TYPE_SECURITY outfit = /datum/outfit/job/hos + plasma_outfit = /datum/outfit/plasmaman/hos + 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, diff --git a/code/modules/jobs/job_types/janitor.dm b/code/modules/jobs/job_types/janitor.dm index 2f6d6f0e32..c62c2e5b26 100644 --- a/code/modules/jobs/job_types/janitor.dm +++ b/code/modules/jobs/job_types/janitor.dm @@ -10,6 +10,7 @@ selection_color = "#bbe291" outfit = /datum/outfit/job/janitor + plasma_outfit = /datum/outfit/plasmaman/janitor access = list(ACCESS_JANITOR, ACCESS_MAINT_TUNNELS, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_JANITOR, ACCESS_MAINT_TUNNELS, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/lawyer.dm b/code/modules/jobs/job_types/lawyer.dm index 1a7499800b..17c376a5de 100644 --- a/code/modules/jobs/job_types/lawyer.dm +++ b/code/modules/jobs/job_types/lawyer.dm @@ -11,6 +11,7 @@ var/lawyers = 0 //Counts lawyer amount 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) minimal_access = list(ACCESS_LAWYER, ACCESS_COURT, ACCESS_SEC_DOORS) diff --git a/code/modules/jobs/job_types/medical_doctor.dm b/code/modules/jobs/job_types/medical_doctor.dm index 5ec4b83b2f..d6a763acfe 100644 --- a/code/modules/jobs/job_types/medical_doctor.dm +++ b/code/modules/jobs/job_types/medical_doctor.dm @@ -10,6 +10,7 @@ selection_color = "#74b5e0" 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) minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CLONING, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/mime.dm b/code/modules/jobs/job_types/mime.dm index 4ba2489ab2..e00b3a1e29 100644 --- a/code/modules/jobs/job_types/mime.dm +++ b/code/modules/jobs/job_types/mime.dm @@ -10,6 +10,7 @@ selection_color = "#dddddd" outfit = /datum/outfit/job/mime + plasma_outfit = /datum/outfit/plasmaman/mime access = list(ACCESS_THEATRE) minimal_access = list(ACCESS_THEATRE) diff --git a/code/modules/jobs/job_types/research_director.dm b/code/modules/jobs/job_types/research_director.dm index 7128fbe2c7..33f7df8260 100644 --- a/code/modules/jobs/job_types/research_director.dm +++ b/code/modules/jobs/job_types/research_director.dm @@ -17,6 +17,7 @@ exp_type = EXP_TYPE_CREW outfit = /datum/outfit/job/rd + plasma_outfit = /datum/outfit/plasmaman/rd access = list(ACCESS_RD, ACCESS_HEADS, ACCESS_TOX, ACCESS_GENETICS, ACCESS_MORGUE, ACCESS_TOX_STORAGE, ACCESS_TELEPORTER, ACCESS_SEC_DOORS, diff --git a/code/modules/jobs/job_types/roboticist.dm b/code/modules/jobs/job_types/roboticist.dm index f5ae93bb6a..aa52b353df 100644 --- a/code/modules/jobs/job_types/roboticist.dm +++ b/code/modules/jobs/job_types/roboticist.dm @@ -12,6 +12,7 @@ exp_type = EXP_TYPE_CREW 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) minimal_access = list(ACCESS_ROBOTICS, ACCESS_TECH_STORAGE, ACCESS_MORGUE, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/scientist.dm b/code/modules/jobs/job_types/scientist.dm index 476f740b9d..a851b333fe 100644 --- a/code/modules/jobs/job_types/scientist.dm +++ b/code/modules/jobs/job_types/scientist.dm @@ -12,6 +12,7 @@ exp_type = EXP_TYPE_CREW 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) minimal_access = list(ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/security_officer.dm b/code/modules/jobs/job_types/security_officer.dm index 7e71b2d1f4..bc83eb752d 100644 --- a/code/modules/jobs/job_types/security_officer.dm +++ b/code/modules/jobs/job_types/security_officer.dm @@ -14,6 +14,7 @@ exp_type = EXP_TYPE_CREW 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) 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() diff --git a/code/modules/jobs/job_types/shaft_miner.dm b/code/modules/jobs/job_types/shaft_miner.dm index ebf7ba0f1f..04d3fb53b8 100644 --- a/code/modules/jobs/job_types/shaft_miner.dm +++ b/code/modules/jobs/job_types/shaft_miner.dm @@ -12,6 +12,7 @@ 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_MINING_STATION, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/station_engineer.dm b/code/modules/jobs/job_types/station_engineer.dm index d3f5db7dbb..2396728ad8 100644 --- a/code/modules/jobs/job_types/station_engineer.dm +++ b/code/modules/jobs/job_types/station_engineer.dm @@ -12,6 +12,7 @@ exp_type = EXP_TYPE_CREW 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_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_ATMOSPHERICS, ACCESS_TCOMSAT, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/virologist.dm b/code/modules/jobs/job_types/virologist.dm index 790e828931..3e9b3ba06c 100644 --- a/code/modules/jobs/job_types/virologist.dm +++ b/code/modules/jobs/job_types/virologist.dm @@ -12,6 +12,7 @@ exp_requirements = 60 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) minimal_access = list(ACCESS_MEDICAL, ACCESS_VIROLOGY, ACCESS_MINERAL_STOREROOM) diff --git a/code/modules/jobs/job_types/warden.dm b/code/modules/jobs/job_types/warden.dm index 22e3f9b0f1..c909342d6f 100644 --- a/code/modules/jobs/job_types/warden.dm +++ b/code/modules/jobs/job_types/warden.dm @@ -14,6 +14,7 @@ exp_type = EXP_TYPE_CREW 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) 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() diff --git a/code/modules/mob/dead/new_player/sprite_accessories/Citadel_Snowflake.dm b/code/modules/mob/dead/new_player/sprite_accessories/Citadel_Snowflake.dm index 020776a75f..3c2c850e3c 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/Citadel_Snowflake.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/Citadel_Snowflake.dm @@ -1,9 +1,9 @@ -/datum/sprite_accessory/mam_tails/shark/datashark +/datum/sprite_accessory/tails/mam_tails/shark/datashark name = "DataShark" icon_state = "datashark" ckeys_allowed = list("rubyflamewing") -/datum/sprite_accessory/mam_tails_animated/shark/datashark +/datum/sprite_accessory/tails_animated/mam_tails_animated/shark/datashark name = "DataShark" icon_state = "datashark" ckeys_allowed = list("rubyflamewing") @@ -14,19 +14,19 @@ ckeys_allowed = list("rubyflamewing") //Sabresune -/datum/sprite_accessory/mam_ears/sabresune +/datum/sprite_accessory/ears/mam_ears/sabresune name = "Sabresune" icon_state = "sabresune" ckeys_allowed = list("poojawa") extra = TRUE extra_color_src = MUTCOLORS3 -/datum/sprite_accessory/mam_tails/sabresune +/datum/sprite_accessory/tails/mam_tails/sabresune name = "Sabresune" icon_state = "sabresune" ckeys_allowed = list("poojawa") -/datum/sprite_accessory/mam_tails_animated/sabresune +/datum/sprite_accessory/tails_animated/mam_tails_animated/sabresune name = "Sabresune" icon_state = "sabresune" ckeys_allowed = list("poojawa") @@ -37,17 +37,17 @@ ckeys_allowed = list("poojawa") //Lunasune -/datum/sprite_accessory/mam_ears/lunasune +/datum/sprite_accessory/ears/mam_ears/lunasune name = "lunasune" icon_state = "lunasune" ckeys_allowed = list("invader4352") -/datum/sprite_accessory/mam_tails/lunasune +/datum/sprite_accessory/tails/mam_tails/lunasune name = "lunasune" icon_state = "lunasune" ckeys_allowed = list("invader4352") -/datum/sprite_accessory/mam_tails_animated/lunasune +/datum/sprite_accessory/tails_animated/mam_tails_animated/lunasune name = "lunasune" icon_state = "lunasune" ckeys_allowed = list("invader4352") diff --git a/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm b/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm index 6514cb4f80..4cb8d080ff 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm @@ -76,6 +76,9 @@ //For soft-restricting markings to species IDs 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 icon = 'icons/mob/clothing/underwear.dmi' var/has_color = FALSE diff --git a/code/modules/mob/dead/new_player/sprite_accessories/alienpeople.dm b/code/modules/mob/dead/new_player/sprite_accessories/alienpeople.dm index c8e7aca26d..899bf91081 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/alienpeople.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/alienpeople.dm @@ -7,6 +7,9 @@ mutant_part_string = "xenodorsal" 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 name = "Standard" icon_state = "standard" @@ -27,6 +30,9 @@ mutant_part_string = "tail" 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 name = "None" relevant_layers = null @@ -43,6 +49,10 @@ mutant_part_string = "xhead" 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 name = "Standard" icon_state = "standard" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/body_markings.dm b/code/modules/mob/dead/new_player/sprite_accessories/body_markings.dm index 9950f0d76a..a04838a360 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/body_markings.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/body_markings.dm @@ -224,6 +224,9 @@ color_src = 0 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 name = "None" icon_state = "none" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/ears.dm b/code/modules/mob/dead/new_player/sprite_accessories/ears.dm index bc269ccf62..1e6c797364 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/ears.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/ears.dm @@ -3,6 +3,10 @@ mutant_part_string = "ears" 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 name = "None" icon_state = "none" @@ -175,50 +179,54 @@ *************** Furry Ears **************** *******************************************/ -/datum/sprite_accessory/mam_ears +/datum/sprite_accessory/ears/mam_ears icon = 'modular_citadel/icons/mob/mam_ears.dmi' color_src = MATRIXED mutant_part_string = "ears" relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER) -/datum/sprite_accessory/mam_ears/none +/datum/sprite_accessory/ears/mam_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["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" icon_state = "none" relevant_layers = null -/datum/sprite_accessory/mam_ears/axolotl +/datum/sprite_accessory/ears/mam_ears/axolotl name = "Axolotl" icon_state = "axolotl" -/datum/sprite_accessory/mam_ears/bat +/datum/sprite_accessory/ears/mam_ears/bat name = "Bat" icon_state = "bat" -/datum/sprite_accessory/mam_ears/bear +/datum/sprite_accessory/ears/mam_ears/bear name = "Bear" icon_state = "bear" -/datum/sprite_accessory/mam_ears/bigwolf +/datum/sprite_accessory/ears/mam_ears/bigwolf name = "Big Wolf" icon_state = "bigwolf" -/datum/sprite_accessory/mam_ears/bigwolfinner +/datum/sprite_accessory/ears/mam_ears/bigwolfinner name = "Big Wolf (ALT)" icon_state = "bigwolfinner" extra = TRUE extra_color_src = NONE -/datum/sprite_accessory/mam_ears/bigwolfdark +/datum/sprite_accessory/ears/mam_ears/bigwolfdark name = "Dark Big Wolf" icon_state = "bigwolfdark" -/datum/sprite_accessory/mam_ears/bigwolfinnerdark +/datum/sprite_accessory/ears/mam_ears/bigwolfinnerdark name = "Dark Big Wolf (ALT)" icon_state = "bigwolfinnerdark" extra = TRUE extra_color_src = NONE -/datum/sprite_accessory/mam_ears/cat +/datum/sprite_accessory/ears/mam_ears/cat name = "Cat" icon_state = "cat" icon = 'icons/mob/mutant_bodyparts.dmi' @@ -226,100 +234,100 @@ extra = TRUE extra_color_src = NONE -/datum/sprite_accessory/mam_ears/catbig +/datum/sprite_accessory/ears/mam_ears/catbig name = "Cat, Big" icon_state = "catbig" -/datum/sprite_accessory/mam_ears/cow +/datum/sprite_accessory/ears/mam_ears/cow name = "Cow" icon_state = "cow" -/datum/sprite_accessory/mam_ears/curled +/datum/sprite_accessory/ears/mam_ears/curled name = "Curled Horn" icon_state = "horn1" color_src = MUTCOLORS3 -/datum/sprite_accessory/mam_ears/deer +/datum/sprite_accessory/ears/mam_ears/deer name = "Deer" icon_state = "deer" color_src = MUTCOLORS3 -/datum/sprite_accessory/mam_ears/eevee +/datum/sprite_accessory/ears/mam_ears/eevee name = "Eevee" icon_state = "eevee" -/datum/sprite_accessory/mam_ears/elf +/datum/sprite_accessory/ears/mam_ears/elf name = "Elf" icon_state = "elf" color_src = MUTCOLORS3 -/datum/sprite_accessory/mam_ears/elephant +/datum/sprite_accessory/ears/mam_ears/elephant name = "Elephant" icon_state = "elephant" -/datum/sprite_accessory/mam_ears/fennec +/datum/sprite_accessory/ears/mam_ears/fennec name = "Fennec" icon_state = "fennec" -/datum/sprite_accessory/mam_ears/fish +/datum/sprite_accessory/ears/mam_ears/fish name = "Fish" icon_state = "fish" -/datum/sprite_accessory/mam_ears/fox +/datum/sprite_accessory/ears/mam_ears/fox name = "Fox" icon_state = "fox" -/datum/sprite_accessory/mam_ears/husky +/datum/sprite_accessory/ears/mam_ears/husky name = "Husky" icon_state = "wolf" -/datum/sprite_accessory/mam_ears/kangaroo +/datum/sprite_accessory/ears/mam_ears/kangaroo name = "kangaroo" icon_state = "kangaroo" -/datum/sprite_accessory/mam_ears/jellyfish +/datum/sprite_accessory/ears/mam_ears/jellyfish name = "Jellyfish" icon_state = "jellyfish" color_src = HAIR -/datum/sprite_accessory/mam_ears/lab +/datum/sprite_accessory/ears/mam_ears/lab name = "Dog, Long" icon_state = "lab" -/datum/sprite_accessory/mam_ears/murid +/datum/sprite_accessory/ears/mam_ears/murid name = "Murid" icon_state = "murid" -/datum/sprite_accessory/mam_ears/otie +/datum/sprite_accessory/ears/mam_ears/otie name = "Otusian" icon_state = "otie" -/datum/sprite_accessory/mam_ears/squirrel +/datum/sprite_accessory/ears/mam_ears/squirrel name = "Squirrel" icon_state = "squirrel" -/datum/sprite_accessory/mam_ears/pede +/datum/sprite_accessory/ears/mam_ears/pede name = "Scolipede" icon_state = "pede" -/datum/sprite_accessory/mam_ears/rabbit +/datum/sprite_accessory/ears/mam_ears/rabbit name = "Rabbit" icon_state = "rabbit" -/datum/sprite_accessory/mam_ears/sergal +/datum/sprite_accessory/ears/mam_ears/sergal name = "Sergal" icon_state = "sergal" -/datum/sprite_accessory/mam_ears/skunk +/datum/sprite_accessory/ears/mam_ears/skunk name = "skunk" icon_state = "skunk" -/datum/sprite_accessory/mam_ears/wolf +/datum/sprite_accessory/ears/mam_ears/wolf name = "Wolf" icon_state = "wolf" -/datum/sprite_accessory/mam_ears/bunny +/datum/sprite_accessory/ears/mam_ears/bunny name = "Bunny" icon_state = "bunny" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/frills.dm b/code/modules/mob/dead/new_player/sprite_accessories/frills.dm index 0aaec309a4..18a76df116 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/frills.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/frills.dm @@ -2,6 +2,10 @@ icon = 'icons/mob/mutant_bodyparts.dmi' 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 name = "None" icon_state = "none" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/horns.dm b/code/modules/mob/dead/new_player/sprite_accessories/horns.dm index b39f48f858..3a65eaebfa 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/horns.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/horns.dm @@ -3,6 +3,10 @@ color_src = HORNCOLOR 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 name = "None" icon_state = "none" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm index 2ec6da2da8..d41f5ace22 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm @@ -30,6 +30,9 @@ var/alt_taur_mode = NONE //Same as above. 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() switch(hide_legs) if(USE_QUADRUPED_CLIP_MASK) diff --git a/code/modules/mob/dead/new_player/sprite_accessories/snouts.dm b/code/modules/mob/dead/new_player/sprite_accessories/snouts.dm index 2c0db56ce4..2e14a88f29 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/snouts.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/snouts.dm @@ -3,6 +3,10 @@ mutant_part_string = "snout" 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 name = "Sharp" icon_state = "sharp" @@ -150,35 +154,39 @@ ************** Mammal Snouts ************** *******************************************/ -/datum/sprite_accessory/mam_snouts +/datum/sprite_accessory/snouts/mam_snouts color_src = MATRIXED icon = 'modular_citadel/icons/mob/mam_snouts.dmi' recommended_species = list("mammal", "slimeperson", "insect", "podweak") mutant_part_string = "snout" relevant_layers = list(BODY_ADJ_LAYER, BODY_FRONT_LAYER) -/datum/sprite_accessory/mam_snouts/none +/datum/sprite_accessory/snouts/mam_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/mam_snouts/none name = "None" icon_state = "none" recommended_species = null relevant_layers = null -/datum/sprite_accessory/mam_snouts/bird +/datum/sprite_accessory/snouts/mam_snouts/bird name = "Beak" icon_state = "bird" -/datum/sprite_accessory/mam_snouts/bigbeak +/datum/sprite_accessory/snouts/mam_snouts/bigbeak name = "Big Beak" icon_state = "bigbeak" -/datum/sprite_accessory/mam_snouts/bug +/datum/sprite_accessory/snouts/mam_snouts/bug name = "Bug" icon_state = "bug" color_src = MUTCOLORS extra2 = TRUE extra2_color_src = MUTCOLORS3 -/datum/sprite_accessory/mam_snouts/elephant +/datum/sprite_accessory/snouts/mam_snouts/elephant name = "Elephant" icon_state = "elephant" extra = TRUE @@ -194,92 +202,92 @@ name = "Mammal, Long" icon_state = "lcanid" -/datum/sprite_accessory/mam_snouts/lcanidalt +/datum/sprite_accessory/snouts/mam_snouts/lcanidalt name = "Mammal, Long ALT" icon_state = "lcanidalt" -/datum/sprite_accessory/mam_snouts/scanid +/datum/sprite_accessory/snouts/mam_snouts/scanid name = "Mammal, Short" icon_state = "scanid" -/datum/sprite_accessory/mam_snouts/scanidalt +/datum/sprite_accessory/snouts/mam_snouts/scanidalt name = "Mammal, Short ALT" icon_state = "scanidalt" -/datum/sprite_accessory/mam_snouts/scanidalt2 +/datum/sprite_accessory/snouts/mam_snouts/scanidalt2 name = "Mammal, Short ALT 2" icon_state = "scanidalt2" -/datum/sprite_accessory/mam_snouts/wolf +/datum/sprite_accessory/snouts/mam_snouts/wolf name = "Mammal, Thick" icon_state = "wolf" -/datum/sprite_accessory/mam_snouts/wolfalt +/datum/sprite_accessory/snouts/mam_snouts/wolfalt name = "Mammal, Thick ALT" icon_state = "wolfalt" -/datum/sprite_accessory/mam_snouts/redpanda +/datum/sprite_accessory/snouts/mam_snouts/redpanda name = "WahCoon" icon_state = "wah" -/datum/sprite_accessory/mam_snouts/redpandaalt +/datum/sprite_accessory/snouts/mam_snouts/redpandaalt name = "WahCoon ALT" icon_state = "wahalt" -/datum/sprite_accessory/mam_snouts/rhino +/datum/sprite_accessory/snouts/mam_snouts/rhino name = "Horn" icon_state = "rhino" extra = TRUE extra = MUTCOLORS3 -/datum/sprite_accessory/mam_snouts/rodent +/datum/sprite_accessory/snouts/mam_snouts/rodent name = "Rodent" icon_state = "rodent" -/datum/sprite_accessory/mam_snouts/husky +/datum/sprite_accessory/snouts/mam_snouts/husky name = "Husky" icon_state = "husky" -/datum/sprite_accessory/mam_snouts/otie +/datum/sprite_accessory/snouts/mam_snouts/otie name = "Otie" icon_state = "otie" -/datum/sprite_accessory/mam_snouts/pede +/datum/sprite_accessory/snouts/mam_snouts/pede name = "Scolipede" icon_state = "pede" -/datum/sprite_accessory/mam_snouts/sergal +/datum/sprite_accessory/snouts/mam_snouts/sergal name = "Sergal" icon_state = "sergal" -/datum/sprite_accessory/mam_snouts/shark +/datum/sprite_accessory/snouts/mam_snouts/shark name = "Shark" icon_state = "shark" -/datum/sprite_accessory/mam_snouts/hshark +/datum/sprite_accessory/snouts/mam_snouts/hshark name = "hShark" icon_state = "hshark" -/datum/sprite_accessory/mam_snouts/toucan +/datum/sprite_accessory/snouts/mam_snouts/toucan name = "Toucan" icon_state = "toucan" -/datum/sprite_accessory/mam_snouts/sharp +/datum/sprite_accessory/snouts/mam_snouts/sharp name = "Sharp" icon_state = "sharp" color_src = MUTCOLORS -/datum/sprite_accessory/mam_snouts/round +/datum/sprite_accessory/snouts/mam_snouts/round name = "Round" icon_state = "round" color_src = MUTCOLORS -/datum/sprite_accessory/mam_snouts/sharplight +/datum/sprite_accessory/snouts/mam_snouts/sharplight name = "Sharp + Light" icon_state = "sharplight" color_src = MUTCOLORS -/datum/sprite_accessory/mam_snouts/roundlight +/datum/sprite_accessory/snouts/mam_snouts/roundlight name = "Round + Light" icon_state = "roundlight" color_src = MUTCOLORS @@ -289,109 +297,109 @@ **************** Snouts ******************* *************but higher up*****************/ -/datum/sprite_accessory/mam_snouts/fbird +/datum/sprite_accessory/snouts/mam_snouts/fbird name = "Beak (Top)" icon_state = "fbird" -/datum/sprite_accessory/mam_snouts/fbigbeak +/datum/sprite_accessory/snouts/mam_snouts/fbigbeak name = "Big Beak (Top)" icon_state = "fbigbeak" -/datum/sprite_accessory/mam_snouts/fbug +/datum/sprite_accessory/snouts/mam_snouts/fbug name = "Bug (Top)" icon_state = "fbug" color_src = MUTCOLORS extra2 = TRUE extra2_color_src = MUTCOLORS3 -/datum/sprite_accessory/mam_snouts/felephant +/datum/sprite_accessory/snouts/mam_snouts/felephant name = "Elephant (Top)" icon_state = "felephant" extra = TRUE extra_color_src = MUTCOLORS3 -/datum/sprite_accessory/mam_snouts/flcanid +/datum/sprite_accessory/snouts/mam_snouts/flcanid name = "Mammal, Long (Top)" icon_state = "flcanid" -/datum/sprite_accessory/mam_snouts/flcanidalt +/datum/sprite_accessory/snouts/mam_snouts/flcanidalt name = "Mammal, Long ALT (Top)" icon_state = "flcanidalt" -/datum/sprite_accessory/mam_snouts/fscanid +/datum/sprite_accessory/snouts/mam_snouts/fscanid name = "Mammal, Short (Top)" icon_state = "fscanid" -/datum/sprite_accessory/mam_snouts/fscanidalt +/datum/sprite_accessory/snouts/mam_snouts/fscanidalt name = "Mammal, Short ALT (Top)" icon_state = "fscanidalt" -/datum/sprite_accessory/mam_snouts/fscanidalt2 +/datum/sprite_accessory/snouts/mam_snouts/fscanidalt2 name = "Mammal, Short ALT 2 (Top)" icon_state = "fscanidalt2" -/datum/sprite_accessory/mam_snouts/fwolf +/datum/sprite_accessory/snouts/mam_snouts/fwolf name = "Mammal, Thick (Top)" icon_state = "fwolf" -/datum/sprite_accessory/mam_snouts/fwolfalt +/datum/sprite_accessory/snouts/mam_snouts/fwolfalt name = "Mammal, Thick ALT (Top)" icon_state = "fwolfalt" -/datum/sprite_accessory/mam_snouts/fredpanda +/datum/sprite_accessory/snouts/mam_snouts/fredpanda name = "WahCoon (Top)" icon_state = "fwah" -/datum/sprite_accessory/mam_snouts/frhino +/datum/sprite_accessory/snouts/mam_snouts/frhino name = "Horn (Top)" icon_state = "frhino" extra = TRUE extra = MUTCOLORS3 -/datum/sprite_accessory/mam_snouts/frodent +/datum/sprite_accessory/snouts/mam_snouts/frodent name = "Rodent (Top)" icon_state = "frodent" -/datum/sprite_accessory/mam_snouts/fhusky +/datum/sprite_accessory/snouts/mam_snouts/fhusky name = "Husky (Top)" icon_state = "fhusky" -/datum/sprite_accessory/mam_snouts/fotie +/datum/sprite_accessory/snouts/mam_snouts/fotie name = "Otie (Top)" icon_state = "fotie" -/datum/sprite_accessory/mam_snouts/fpede +/datum/sprite_accessory/snouts/mam_snouts/fpede name = "Scolipede (Top)" icon_state = "fpede" -/datum/sprite_accessory/mam_snouts/fsergal +/datum/sprite_accessory/snouts/mam_snouts/fsergal name = "Sergal (Top)" icon_state = "fsergal" -/datum/sprite_accessory/mam_snouts/fshark +/datum/sprite_accessory/snouts/mam_snouts/fshark name = "Shark (Top)" icon_state = "fshark" -/datum/sprite_accessory/mam_snouts/ftoucan +/datum/sprite_accessory/snouts/mam_snouts/ftoucan name = "Toucan (Top)" icon_state = "ftoucan" -/datum/sprite_accessory/mam_snouts/fsharp +/datum/sprite_accessory/snouts/mam_snouts/fsharp name = "Sharp (Top)" icon_state = "fsharp" color_src = MUTCOLORS -/datum/sprite_accessory/mam_snouts/fround +/datum/sprite_accessory/snouts/mam_snouts/fround name = "Round (Top)" icon_state = "fround" color_src = MUTCOLORS -/datum/sprite_accessory/mam_snouts/fsharplight +/datum/sprite_accessory/snouts/mam_snouts/fsharplight name = "Sharp + Light (Top)" icon_state = "fsharplight" color_src = MUTCOLORS -/datum/sprite_accessory/mam_snouts/froundlight +/datum/sprite_accessory/snouts/mam_snouts/froundlight name = "Round + Light (Top)" icon_state = "froundlight" color_src = MUTCOLORS diff --git a/code/modules/mob/dead/new_player/sprite_accessories/spines.dm b/code/modules/mob/dead/new_player/sprite_accessories/spines.dm index 54749d5ea9..53a5650a05 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/spines.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/spines.dm @@ -2,10 +2,15 @@ icon = 'icons/mob/mutant_bodyparts.dmi' 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 icon = 'icons/mob/mutant_bodyparts.dmi' 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 name = "None" icon_state = "none" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm b/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm index a2884ab944..16531d8f06 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm @@ -1,24 +1,24 @@ //Synth snouts (This is the most important part) -/datum/sprite_accessory/mam_snouts/synthliz +/datum/sprite_accessory/snouts/mam_snouts/synthliz recommended_species = list("synthliz") icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi' color_src = MUTCOLORS name = "Synthetic Lizard - Snout" icon_state = "synthliz_basic" -/datum/sprite_accessory/mam_snouts/synthliz/synthliz_under +/datum/sprite_accessory/snouts/mam_snouts/synthliz/synthliz_under icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi' color_src = MATRIXED name = "Synthetic Lizard - Snout Under" icon_state = "synthliz_under" -/datum/sprite_accessory/mam_snouts/synthliz/synthliz_tert +/datum/sprite_accessory/snouts/mam_snouts/synthliz/synthliz_tert icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi' color_src = MATRIXED name = "Synthetic Lizard - Snout Tertiary" icon_state = "synthliz_tert" -/datum/sprite_accessory/mam_snouts/synthliz/synthliz_tertunder +/datum/sprite_accessory/snouts/mam_snouts/synthliz/synthliz_tertunder icon = 'modular_citadel/icons/mob/synthliz_snouts.dmi' color_src = MATRIXED name = "Synthetic Lizard - Snout Tertiary Under" @@ -42,14 +42,14 @@ icon_state = "synthlizpecslight" //Synth tails -/datum/sprite_accessory/mam_tails/synthliz +/datum/sprite_accessory/tails/mam_tails/synthliz recommended_species = list("synthliz") icon = 'modular_citadel/icons/mob/synthliz_tails.dmi' color_src = MUTCOLORS name = "Synthetic Lizard" icon_state = "synthliz" -/datum/sprite_accessory/mam_tails_animated/synthliz +/datum/sprite_accessory/tails_animated/mam_tails_animated/synthliz recommended_species = list("synthliz") icon = 'modular_citadel/icons/mob/synthliz_tails.dmi' color_src = MUTCOLORS diff --git a/code/modules/mob/dead/new_player/sprite_accessories/tails.dm b/code/modules/mob/dead/new_player/sprite_accessories/tails.dm index 33dbd7059f..0afbeaf070 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/tails.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/tails.dm @@ -3,6 +3,9 @@ mutant_part_string = "tail" 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 icon = 'icons/mob/mutant_bodyparts.dmi' mutant_part_string = "tailwag" @@ -12,6 +15,9 @@ ************* 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 name = "Smooth" icon_state = "smooth" @@ -98,6 +104,9 @@ icon_state = "none" 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 name = "Red Panda" icon_state = "wah" @@ -122,22 +131,22 @@ icon = 'modular_citadel/icons/mob/mam_tails.dmi' color_src = MATRIXED -/datum/sprite_accessory/mam_tails/batl +/datum/sprite_accessory/tails/mam_tails/batl name = "Bat (Long)" icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon_state = "batl" -/datum/sprite_accessory/mam_tails_animated/batl +/datum/sprite_accessory/tails_animated/mam_tails_animated/batl name = "Bat (Long)" icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon_state = "batl" -/datum/sprite_accessory/mam_tails/bats +/datum/sprite_accessory/tails/mam_tails/bats name = "Bat (Short)" icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon_state = "bats" -/datum/sprite_accessory/mam_tails_animated/bats +/datum/sprite_accessory/tails_animated/mam_tails_animated/bats name = "Bat (Short)" icon = 'modular_citadel/icons/mob/mam_tails.dmi' icon_state = "bats" @@ -518,368 +527,371 @@ ************** Furry Tails **************** *******************************************/ -/datum/sprite_accessory/mam_tails +/datum/sprite_accessory/tails/mam_tails color_src = MATRIXED icon = 'modular_citadel/icons/mob/mam_tails.dmi' recommended_species = list("mammal", "slimeperson", "podweak", "felinid", "insect") mutant_part_string = "tail" relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) -/datum/sprite_accessory/mam_tails/none +/datum/sprite_accessory/tails/mam_tails/none name = "None" icon_state = "none" recommended_species = null relevant_layers = null -/datum/sprite_accessory/mam_tails_animated +/datum/sprite_accessory/tails_animated/mam_tails_animated color_src = MATRIXED icon = 'modular_citadel/icons/mob/mam_tails.dmi' mutant_part_string = "tailwag" relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) -/datum/sprite_accessory/mam_tails_animated/none +/datum/sprite_accessory/tails_animated/mam_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["mam_tail"]) + +/datum/sprite_accessory/tails_animated/mam_tails_animated/none name = "None" icon_state = "none" relevant_layers = null -/datum/sprite_accessory/mam_tails/ailurus +/datum/sprite_accessory/tails/mam_tails/ailurus name = "Red Panda" icon_state = "wah" extra = TRUE -/datum/sprite_accessory/mam_tails_animated/ailurus +/datum/sprite_accessory/tails_animated/mam_tails_animated/ailurus name = "Red Panda" icon_state = "wah" extra = TRUE -/datum/sprite_accessory/mam_tails/axolotl +/datum/sprite_accessory/tails/mam_tails/axolotl name = "Axolotl" icon_state = "axolotl" -/datum/sprite_accessory/mam_tails_animated/axolotl +/datum/sprite_accessory/tails_animated/mam_tails_animated/axolotl name = "Axolotl" icon_state = "axolotl" -/datum/sprite_accessory/mam_tails/batl +/datum/sprite_accessory/tails/mam_tails/batl name = "Bat (Long)" icon_state = "batl" -/datum/sprite_accessory/mam_tails_animated/batl +/datum/sprite_accessory/tails_animated/mam_tails_animated/batl name = "Bat (Long)" icon_state = "batl" -/datum/sprite_accessory/mam_tails/bats +/datum/sprite_accessory/tails/mam_tails/bats name = "Bat (Short)" icon_state = "bats" -/datum/sprite_accessory/mam_tails_animated/bats +/datum/sprite_accessory/tails_animated/mam_tails_animated/bats name = "Bat (Short)" icon_state = "bats" -/datum/sprite_accessory/mam_tails/bee +/datum/sprite_accessory/tails/mam_tails/bee name = "Bee" icon_state = "bee" -/datum/sprite_accessory/mam_tails_animated/bee +/datum/sprite_accessory/tails_animated/mam_tails_animated/bee name = "Bee" icon_state = "bee" -/datum/sprite_accessory/mam_tails/cat +/datum/sprite_accessory/tails/mam_tails/cat name = "Cat" icon_state = "cat" color_src = HAIR -/datum/sprite_accessory/mam_tails_animated/cat +/datum/sprite_accessory/tails_animated/mam_tails_animated/cat name = "Cat" icon_state = "cat" color_src = HAIR -/datum/sprite_accessory/mam_tails/catbig +/datum/sprite_accessory/tails/mam_tails/catbig name = "Cat, Big" icon_state = "catbig" -/datum/sprite_accessory/mam_tails_animated/catbig +/datum/sprite_accessory/tails_animated/mam_tails_animated/catbig name = "Cat, Big" icon_state = "catbig" -/datum/sprite_accessory/mam_tails/twocat +/datum/sprite_accessory/tails/mam_tails/twocat name = "Cat, Double" icon_state = "twocat" -/datum/sprite_accessory/mam_tails_animated/twocat +/datum/sprite_accessory/tails_animated/mam_tails_animated/twocat name = "Cat, Double" icon_state = "twocat" -/datum/sprite_accessory/mam_tails/corvid +/datum/sprite_accessory/tails/mam_tails/corvid name = "Corvid" icon_state = "crow" -/datum/sprite_accessory/mam_tails_animated/corvid +/datum/sprite_accessory/tails_animated/mam_tails_animated/corvid name = "Corvid" icon_state = "crow" -/datum/sprite_accessory/mam_tail/cow +/datum/sprite_accessory/tails/mam_tail/cow name = "Cow" icon_state = "cow" -/datum/sprite_accessory/mam_tails_animated/cow +/datum/sprite_accessory/tails_animated/mam_tails_animated/cow name = "Cow" icon_state = "cow" -/datum/sprite_accessory/mam_tails/eevee +/datum/sprite_accessory/tails/mam_tails/eevee name = "Eevee" icon_state = "eevee" -/datum/sprite_accessory/mam_tails_animated/eevee +/datum/sprite_accessory/tails_animated/mam_tails_animated/eevee name = "Eevee" icon_state = "eevee" -/datum/sprite_accessory/mam_tails/fennec +/datum/sprite_accessory/tails/mam_tails/fennec name = "Fennec" icon_state = "fennec" -/datum/sprite_accessory/mam_tails_animated/fennec +/datum/sprite_accessory/tails_animated/mam_tails_animated/fennec name = "Fennec" icon_state = "fennec" -/datum/sprite_accessory/mam_tails/human/fish +/datum/sprite_accessory/tails/mam_tails/human/fish name = "Fish" icon_state = "fish" -/datum/sprite_accessory/mam_tails_animated/human/fish +/datum/sprite_accessory/tails_animated/mam_tails_animated/human/fish name = "Fish" icon_state = "fish" -/datum/sprite_accessory/mam_tails/fox +/datum/sprite_accessory/tails/mam_tails/fox name = "Fox" icon_state = "fox" -/datum/sprite_accessory/mam_tails_animated/fox +/datum/sprite_accessory/tails_animated/mam_tails_animated/fox name = "Fox" icon_state = "fox" -/datum/sprite_accessory/mam_tails/hawk +/datum/sprite_accessory/tails/mam_tails/hawk name = "Hawk" icon_state = "hawk" -/datum/sprite_accessory/mam_tails_animated/hawk +/datum/sprite_accessory/tails_animated/mam_tails_animated/hawk name = "Hawk" icon_state = "hawk" -/datum/sprite_accessory/mam_tails/horse +/datum/sprite_accessory/tails/mam_tails/horse name = "Horse" icon_state = "horse" color_src = HAIR -/datum/sprite_accessory/mam_tails_animated/horse +/datum/sprite_accessory/tails_animated/mam_tails_animated/horse name = "Horse" icon_state = "horse" color_src = HAIR -/datum/sprite_accessory/mam_tails/husky +/datum/sprite_accessory/tails/mam_tails/husky name = "Husky" icon_state = "husky" -/datum/sprite_accessory/mam_tails_animated/husky +/datum/sprite_accessory/tails_animated/mam_tails_animated/husky name = "Husky" icon_state = "husky" -datum/sprite_accessory/mam_tails/insect +datum/sprite_accessory/tails/mam_tails/insect name = "Insect" icon_state = "insect" -/datum/sprite_accessory/mam_tails_animated/insect +/datum/sprite_accessory/tails_animated/mam_tails_animated/insect name = "Insect" icon_state = "insect" -/datum/sprite_accessory/mam_tails/kangaroo +/datum/sprite_accessory/tails/mam_tails/kangaroo name = "kangaroo" icon_state = "kangaroo" -/datum/sprite_accessory/mam_tails_animated/kangaroo +/datum/sprite_accessory/tails_animated/mam_tails_animated/kangaroo name = "kangaroo" icon_state = "kangaroo" -/datum/sprite_accessory/mam_tails/kitsune +/datum/sprite_accessory/tails/mam_tails/kitsune name = "Kitsune" icon_state = "kitsune" -/datum/sprite_accessory/mam_tails_animated/kitsune +/datum/sprite_accessory/tails_animated/mam_tails_animated/kitsune name = "Kitsune" icon_state = "kitsune" -/datum/sprite_accessory/mam_tails/lab +/datum/sprite_accessory/tails/mam_tails/lab name = "Lab" icon_state = "lab" -/datum/sprite_accessory/mam_tails_animated/lab +/datum/sprite_accessory/tails_animated/mam_tails_animated/lab name = "Lab" icon_state = "lab" -/datum/sprite_accessory/mam_tails/murid +/datum/sprite_accessory/tails/mam_tails/murid name = "Murid" icon_state = "murid" -/datum/sprite_accessory/mam_tails_animated/murid +/datum/sprite_accessory/tails_animated/mam_tails_animated/murid name = "Murid" icon_state = "murid" -/datum/sprite_accessory/mam_tails/otie +/datum/sprite_accessory/tails/mam_tails/otie name = "Otusian" icon_state = "otie" -/datum/sprite_accessory/mam_tails_animated/otie +/datum/sprite_accessory/tails_animated/mam_tails_animated/otie name = "Otusian" icon_state = "otie" -/datum/sprite_accessory/mam_tails/orca +/datum/sprite_accessory/tails/mam_tails/orca name = "Orca" icon_state = "orca" -/datum/sprite_accessory/mam_tails_animated/orca +/datum/sprite_accessory/tails_animated/mam_tails_animated/orca name = "Orca" icon_state = "orca" -/datum/sprite_accessory/mam_tails/pede +/datum/sprite_accessory/tails/mam_tails/pede name = "Scolipede" icon_state = "pede" -/datum/sprite_accessory/mam_tails_animated/pede +/datum/sprite_accessory/tails_animated/mam_tails_animated/pede name = "Scolipede" icon_state = "pede" -/datum/sprite_accessory/mam_tails/rabbit +/datum/sprite_accessory/tails/mam_tails/rabbit name = "Rabbit" icon_state = "rabbit" -/datum/sprite_accessory/mam_tails_animated/rabbit +/datum/sprite_accessory/tails_animated/mam_tails_animated/rabbit name = "Rabbit" icon_state = "rabbit" -/datum/sprite_accessory/mam_tails/sergal +/datum/sprite_accessory/tails/mam_tails/sergal name = "Sergal" icon_state = "sergal" -/datum/sprite_accessory/mam_tails_animated/sergal +/datum/sprite_accessory/tails_animated/mam_tails_animated/sergal name = "Sergal" icon_state = "sergal" -/datum/sprite_accessory/mam_tails/skunk +/datum/sprite_accessory/tails/mam_tails/skunk name = "Skunk" icon_state = "skunk" -/datum/sprite_accessory/mam_tails_animated/skunk +/datum/sprite_accessory/tails_animated/mam_tails_animated/skunk name = "Skunk" icon_state = "skunk" -/datum/sprite_accessory/mam_tails/smooth +/datum/sprite_accessory/tails/mam_tails/smooth name = "Smooth" icon_state = "smooth" color_src = MUTCOLORS icon = 'icons/mob/mutant_bodyparts.dmi' -/datum/sprite_accessory/mam_tails_animated/smooth +/datum/sprite_accessory/tails_animated/mam_tails_animated/smooth name = "Smooth" icon_state = "smooth" color_src = MUTCOLORS icon = 'icons/mob/mutant_bodyparts.dmi' -/datum/sprite_accessory/mam_tails_animated/spikes +/datum/sprite_accessory/tails_animated/mam_tails_animated/spikes name = "Spikes" icon_state = "spikes" color_src = MUTCOLORS icon = 'icons/mob/mutant_bodyparts.dmi' -/datum/sprite_accessory/mam_tails/spikes +/datum/sprite_accessory/tails/mam_tails/spikes name = "Spikes" icon_state = "spikes" color_src = MUTCOLORS icon = 'icons/mob/mutant_bodyparts.dmi' -/datum/sprite_accessory/mam_tails/shark +/datum/sprite_accessory/tails/mam_tails/shark name = "Shark" icon_state = "shark" -/datum/sprite_accessory/mam_tails_animated/shark +/datum/sprite_accessory/tails_animated/mam_tails_animated/shark name = "Shark" icon_state = "shark" -/datum/sprite_accessory/mam_tails/shepherd +/datum/sprite_accessory/tails/mam_tails/shepherd name = "Shepherd" icon_state = "shepherd" -/datum/sprite_accessory/mam_tails_animated/shepherd +/datum/sprite_accessory/tails_animated/mam_tails_animated/shepherd name = "Shepherd" icon_state = "shepherd" -/datum/sprite_accessory/mam_tails/straighttail +/datum/sprite_accessory/tails/mam_tails/straighttail name = "Straight Tail" icon_state = "straighttail" -/datum/sprite_accessory/mam_tails_animated/straighttail +/datum/sprite_accessory/tails_animated/mam_tails_animated/straighttail name = "Straight Tail" icon_state = "straighttail" -/datum/sprite_accessory/mam_tails/squirrel +/datum/sprite_accessory/tails/mam_tails/squirrel name = "Squirrel" icon_state = "squirrel" -/datum/sprite_accessory/mam_tails_animated/squirrel +/datum/sprite_accessory/tails_animated/mam_tails_animated/squirrel name = "Squirrel" icon_state = "squirrel" -/datum/sprite_accessory/mam_tails/tamamo_kitsune +/datum/sprite_accessory/tails/mam_tails/tamamo_kitsune name = "Tamamo Kitsune Tails" icon_state = "9sune" -/datum/sprite_accessory/mam_tails_animated/tamamo_kitsune +/datum/sprite_accessory/tails_animated/mam_tails_animated/tamamo_kitsune name = "Tamamo Kitsune Tails" icon_state = "9sune" -/datum/sprite_accessory/mam_tails/tentacle +/datum/sprite_accessory/tails/mam_tails/tentacle name = "Tentacle" icon_state = "tentacle" -/datum/sprite_accessory/mam_tails_animated/tentacle +/datum/sprite_accessory/tails_animated/mam_tails_animated/tentacle name = "Tentacle" icon_state = "tentacle" -/datum/sprite_accessory/mam_tails/tiger +/datum/sprite_accessory/tails/mam_tails/tiger name = "Tiger" icon_state = "tiger" -/datum/sprite_accessory/mam_tails_animated/tiger +/datum/sprite_accessory/tails_animated/mam_tails_animated/tiger name = "Tiger" icon_state = "tiger" -/datum/sprite_accessory/mam_tails/dtiger +/datum/sprite_accessory/tails/mam_tails/dtiger name = "Dark Tiger" icon_state = "dtiger" color_src = MUTCOLORS icon = 'icons/mob/mutant_bodyparts.dmi' -/datum/sprite_accessory/mam_tails_animated/dtiger +/datum/sprite_accessory/tails_animated/mam_tails_animated/dtiger name = "Dark Tiger" icon_state = "dtiger" color_src = MUTCOLORS icon = 'icons/mob/mutant_bodyparts.dmi' -/datum/sprite_accessory/mam_tails/ltiger +/datum/sprite_accessory/tails/mam_tails/ltiger name = "Light Tiger" icon_state = "ltiger" color_src = MUTCOLORS icon = 'icons/mob/mutant_bodyparts.dmi' -/datum/sprite_accessory/mam_tails_animated/ltiger +/datum/sprite_accessory/tails_animated/mam_tails_animated/ltiger name = "Light Tiger" icon_state = "ltiger" color_src = MUTCOLORS icon = 'icons/mob/mutant_bodyparts.dmi' -/datum/sprite_accessory/mam_tails/wolf +/datum/sprite_accessory/tails/mam_tails/wolf name = "Wolf" icon_state = "wolf" -/datum/sprite_accessory/mam_tails_animated/wolf +/datum/sprite_accessory/tails_animated/mam_tails_animated/wolf name = "Wolf" icon_state = "wolf" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/wings.dm b/code/modules/mob/dead/new_player/sprite_accessories/wings.dm index 34767a10f1..fb03df88a1 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/wings.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/wings.dm @@ -5,10 +5,16 @@ icon_state = "none" 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 icon = 'icons/mob/wings.dmi' 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 name = "Angel" icon_state = "angel" diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index df049f672d..ee1ebe4506 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -642,106 +642,15 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(!mutant_bodyparts) 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" - if(mutant_bodyparts["tail_lizard"]) - if((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric) - bodyparts_to_add -= "tail_lizard" - - if(mutant_bodyparts["waggingtail_lizard"]) - if((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric) - 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 + for(var/mutant_part in mutant_bodyparts) + var/reference_list = GLOB.mutant_reference_list[mutant_part] + if(reference_list) + var/datum/sprite_accessory/S + S = reference_list[H.dna.features[mutant_part]] + if(!S || S.is_not_visible(H, tauric)) + bodyparts_to_add -= mutant_part //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 @@ -778,76 +687,18 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) var/list/dna_feature_as_text_string = list() for(var/bodypart in bodyparts_to_add) - var/datum/sprite_accessory/S - switch(bodypart) - if("tail_lizard") - 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"]] + var/reference_list = GLOB.mutant_reference_list[bodypart] + if(reference_list) + var/datum/sprite_accessory/S + S = reference_list[H.dna.features[bodypart]] - if(!S || S.icon_state == "none") - continue + if(!S || S.icon_state == "none") + continue - for(var/L in S.relevant_layers) - LAZYADD(relevant_layers["[L]"], S) - if(!S.mutant_part_string) - dna_feature_as_text_string[S] = bodypart + for(var/L in S.relevant_layers) + LAZYADD(relevant_layers["[L]"], S) + if(!S.mutant_part_string) + dna_feature_as_text_string[S] = bodypart var/static/list/layer_text = list( "[BODY_BEHIND_LAYER]" = "BEHIND", @@ -2046,17 +1897,8 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) 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 - - - */ - - - /datum/species/proc/get_biological_state(mob/living/carbon/human/H) . = BIO_INORGANIC if(HAS_FLESH in species_traits) @@ -2072,7 +1914,6 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(HAS_TRAIT(H, TRAIT_NOBREATH)) return TRUE - /datum/species/proc/handle_environment(datum/gas_mixture/environment, mob/living/carbon/human/H) if(!environment) return @@ -2264,7 +2105,6 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) /datum/species/proc/spec_stun(mob/living/carbon/human/H,amount) if(H) stop_wagging_tail(H) - . = stunmod * H.physiology.stun_mod * amount ////////////// diff --git a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm index c762a52ffc..49c55f70b3 100644 --- a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm @@ -504,7 +504,7 @@ else if (select_alteration == "Ears") var/list/snowflake_ears_list = list("Normal" = null) for(var/path in GLOB.mam_ears_list) - var/datum/sprite_accessory/mam_ears/instance = GLOB.mam_ears_list[path] + var/datum/sprite_accessory/ears/mam_ears/instance = GLOB.mam_ears_list[path] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey))) @@ -518,7 +518,7 @@ else if (select_alteration == "Snout") var/list/snowflake_snouts_list = list("Normal" = null) for(var/path in GLOB.mam_snouts_list) - var/datum/sprite_accessory/mam_snouts/instance = GLOB.mam_snouts_list[path] + var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.mam_snouts_list[path] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey))) @@ -549,7 +549,7 @@ else if (select_alteration == "Tail") var/list/snowflake_tails_list = list("Normal" = null) for(var/path in GLOB.mam_tails_list) - var/datum/sprite_accessory/mam_tails/instance = GLOB.mam_tails_list[path] + var/datum/sprite_accessory/tails/mam_tails/instance = GLOB.mam_tails_list[path] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey))) diff --git a/code/modules/mob/living/carbon/human/species_types/plasmamen.dm b/code/modules/mob/living/carbon/human/species_types/plasmamen.dm index b61e29b685..8c30adb8f9 100644 --- a/code/modules/mob/living/carbon/human/species_types/plasmamen.dm +++ b/code/modules/mob/living/carbon/human/species_types/plasmamen.dm @@ -57,89 +57,10 @@ ..() /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 - switch(current_job) - if("Chaplain") - 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 + if(J) + if(J.plasma_outfit) + O = new J.plasma_outfit H.equipOutfit(O, visualsOnly) H.internal = H.get_item_for_held_index(2) diff --git a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm index b760af9850..228a69c30f 100644 --- a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm @@ -82,13 +82,11 @@ M.AddSpell(SW) shadowwalk = SW - /obj/item/organ/brain/nightmare/Remove(special = FALSE) if(shadowwalk && owner) owner.RemoveSpell(shadowwalk) return ..() - /obj/item/organ/heart/nightmare name = "heart of darkness" desc = "An alien organ that twists and writhes when exposed to light." diff --git a/code/modules/mob/living/carbon/human/species_types/skeletons.dm b/code/modules/mob/living/carbon/human/species_types/skeletons.dm index c504e5ccd3..1b6bef9dc6 100644 --- a/code/modules/mob/living/carbon/human/species_types/skeletons.dm +++ b/code/modules/mob/living/carbon/human/species_types/skeletons.dm @@ -24,7 +24,7 @@ burnmod = 1 ..() -/datum/species/skeleton/greater/check_roundstart_eligible() +/datum/species/skeleton/check_roundstart_eligible() if(SSevents.holidays && SSevents.holidays[HALLOWEEN]) return TRUE return ..() diff --git a/code/modules/mob/living/carbon/human/species_types/synthliz.dm b/code/modules/mob/living/carbon/human/species_types/synthliz.dm index 5ed806b302..173411eaa1 100644 --- a/code/modules/mob/living/carbon/human/species_types/synthliz.dm +++ b/code/modules/mob/living/carbon/human/species_types/synthliz.dm @@ -22,4 +22,4 @@ tail_type = "mam_tail" wagging_type = "mam_waggingtail" - species_type = "robotic" \ No newline at end of file + species_type = "robotic" diff --git a/code/modules/mob/living/carbon/human/species_types/synths.dm b/code/modules/mob/living/carbon/human/species_types/synths.dm index a1a2a33c54..c10521dfd9 100644 --- a/code/modules/mob/living/carbon/human/species_types/synths.dm +++ b/code/modules/mob/living/carbon/human/species_types/synths.dm @@ -100,14 +100,12 @@ else return ..() - /datum/species/synth/handle_body(mob/living/carbon/human/H) if(fake_species) fake_species.handle_body(H) else return ..() - /datum/species/synth/handle_mutant_bodyparts(mob/living/carbon/human/H, forced_colour) if(fake_species) fake_species.handle_body(H,forced_colour) diff --git a/code/modules/mob/living/simple_animal/bot/cleanbot.dm b/code/modules/mob/living/simple_animal/bot/cleanbot.dm index 5c83482bde..e7c5644e26 100644 --- a/code/modules/mob/living/simple_animal/bot/cleanbot.dm +++ b/code/modules/mob/living/simple_animal/bot/cleanbot.dm @@ -313,7 +313,7 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/insectguts, /obj/effect/decal/cleanable/semen, - /obj/effect/decal/cleanable/femcum, + /obj/effect/decal/cleanable/semen/femcum, /obj/effect/decal/cleanable/generic, /obj/effect/decal/cleanable/glass,, /obj/effect/decal/cleanable/cobweb, diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index b60ee8d108..3433824282 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -2218,6 +2218,7 @@ color = "#FFFFFF" // rgb: 255, 255, 255 can_synth = FALSE nutriment_factor = 0.5 * REAGENTS_METABOLISM + var/decal_path = /obj/effect/decal/cleanable/semen /datum/reagent/consumable/semen/reaction_turf(turf/T, reac_volume) if(!istype(T)) @@ -2227,7 +2228,7 @@ var/obj/effect/decal/cleanable/semen/S = locate() in T if(!S) - S = new(T) + S = new decal_path(T) if(data["blood_DNA"]) S.add_blood_DNA(list(data["blood_DNA"] = data["blood_type"])) @@ -2251,51 +2252,20 @@ blood_DNA |= S.blood_DNA return ..() -/datum/reagent/consumable/femcum +/datum/reagent/consumable/semen/femcum name = "Female Ejaculate" 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_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" - can_synth = FALSE - nutriment_factor = 0.5 * REAGENTS_METABOLISM + decal_path = /obj/effect/decal/cleanable/semen/femcum -/obj/effect/decal/cleanable/femcum +/obj/effect/decal/cleanable/semen/femcum name = "female ejaculate" - desc = null - gender = PLURAL - density = 0 - layer = ABOVE_NORMAL_TURF_LAYER - icon = 'icons/obj/genitals/effects.dmi' icon_state = "fem1" random_icon_states = list("fem1", "fem2", "fem3", "fem4") blood_state = 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 name = "Determination" description = "For when you need to push on a little more. Do NOT allow near plants." From c74803dd1a03a9279ebfafdf20781c3e81e937ff Mon Sep 17 00:00:00 2001 From: DeltaFire Date: Mon, 17 Aug 2020 16:53:49 +0200 Subject: [PATCH 04/15] updates the wiki page link --- code/game/gamemodes/clock_cult/clock_cult.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 406e142a25..ebd9dfaee1 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -225,7 +225,7 @@ Credit where due: if(S && !QDELETED(S)) to_chat(L, "[slot] is a clockwork slab, a multipurpose tool used to construct machines and invoke ancient words of power. If this is your first time \ as a servant, you can find a concise tutorial in the Recollection category of its interface.") - to_chat(L, "If you want more information, you can read the wiki page to learn more.") + to_chat(L, "If you want more information, you can read the wiki page to learn more.") return TRUE return FALSE From 31f1e04654f1506682be66f1a3460468059126bc Mon Sep 17 00:00:00 2001 From: DeltaFire Date: Mon, 17 Aug 2020 17:03:53 +0200 Subject: [PATCH 05/15] updates the helpertext in general Recollection doesn't actually offer any help anymore and just redirects you to the wiki anyways. --- code/game/gamemodes/clock_cult/clock_cult.dm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index ebd9dfaee1..be8dee5bf8 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -224,8 +224,7 @@ Credit where due: qdel(S) if(S && !QDELETED(S)) to_chat(L, "[slot] is a clockwork slab, a multipurpose tool used to construct machines and invoke ancient words of power. If this is your first time \ - as a servant, you can find a concise tutorial in the Recollection category of its interface.") - to_chat(L, "If you want more information, you can read the wiki page to learn more.") + as a servant, you can read the wiki page to learn more.") return TRUE return FALSE From f1b0e72676991b342a957d844d9d60c9c289b186 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Mon, 17 Aug 2020 10:58:04 -0500 Subject: [PATCH 06/15] Automatic changelog generation for PR #13108 [ci skip] --- html/changelogs/AutoChangeLog-pr-13108.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-13108.yml diff --git a/html/changelogs/AutoChangeLog-pr-13108.yml b/html/changelogs/AutoChangeLog-pr-13108.yml new file mode 100644 index 0000000000..6529683cdb --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-13108.yml @@ -0,0 +1,4 @@ +author: "Hatterhat" +delete-after: True +changes: + - rscadd: "Adminspawn only .357 DumDum rounds! Because sometimes the other guy just really needs to hurt." From b13048f6368c41a37c24fce63eb4da3bfe61680b Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Mon, 17 Aug 2020 12:15:09 -0500 Subject: [PATCH 07/15] makes glass floors actually deconstructable --- code/game/turfs/openspace/transparent.dm | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/code/game/turfs/openspace/transparent.dm b/code/game/turfs/openspace/transparent.dm index 78ce820257..8efc60a15b 100644 --- a/code/game/turfs/openspace/transparent.dm +++ b/code/game/turfs/openspace/transparent.dm @@ -57,6 +57,7 @@ icon = 'icons/turf/floors/glass.dmi' icon_state = "floor_glass" smooth = SMOOTH_MORE + var/floor_tile = /obj/item/stack/sheet/glass canSmoothWith = list(/turf/open/transparent/glass, /turf/open/transparent/glass/reinforced) footstep = FOOTSTEP_PLATING barefootstep = FOOTSTEP_HARD_BAREFOOT @@ -67,7 +68,28 @@ icon_state = "" //Prevent the normal icon from appearing behind the smooth overlays return ..() +/turf/open/transparent/glass/wrench_act(mob/living/user, obj/item/I) + to_chat(user, "You begin removing glass...") + if(I.use_tool(src, user, 30, volume=80)) + if(!istype(src, /turf/open/transparent/glass)) + return TRUE + if(floor_tile) + new floor_tile(src, 2) + ScrapeAway(flags = CHANGETURF_INHERIT_AIR) + return TRUE + /turf/open/transparent/glass/reinforced name = "Reinforced glass floor" desc = "Do jump on it, it can take it." - icon = 'icons/turf/floors/reinf_glass.dmi' \ No newline at end of file + icon = 'icons/turf/floors/reinf_glass.dmi' + floor_tile = /obj/item/stack/sheet/rglass + +/turf/open/transparent/glass/reinforced/wrench_act(mob/living/user, obj/item/I) + to_chat(user, "You begin removing reinforced glass...") + if(I.use_tool(src, user, 30, volume=80)) + if(!istype(src, /turf/open/transparent/glass/reinforced)) + return TRUE + if(floor_tile) + new floor_tile(src, 2) + ScrapeAway(flags = CHANGETURF_INHERIT_AIR) + return TRUE From 0d3e95803cdf7b4eb30bbf8c046a8f45d5618d80 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Mon, 17 Aug 2020 18:24:23 -0500 Subject: [PATCH 08/15] Automatic changelog generation for PR #13195 [ci skip] --- html/changelogs/AutoChangeLog-pr-13195.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-13195.yml diff --git a/html/changelogs/AutoChangeLog-pr-13195.yml b/html/changelogs/AutoChangeLog-pr-13195.yml new file mode 100644 index 0000000000..878b7bb3ad --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-13195.yml @@ -0,0 +1,4 @@ +author: "Detective-Google" +delete-after: True +changes: + - bugfix: "you can actually remove glass floors now" From 47424be1c0213b926d93d6a22670144750c03539 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 18 Aug 2020 00:46:05 +0100 Subject: [PATCH 09/15] tail fix --- code/_globalvars/lists/flavor_misc.dm | 7 ++++++- .../mob/dead/new_player/sprite_accessories/spines.dm | 3 ++- .../mob/dead/new_player/sprite_accessories/tails.dm | 8 ++++---- code/modules/mob/living/carbon/human/species.dm | 6 +++++- 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm index 1a0afc2c2a..8225725ffd 100644 --- a/code/_globalvars/lists/flavor_misc.dm +++ b/code/_globalvars/lists/flavor_misc.dm @@ -73,7 +73,12 @@ GLOBAL_LIST_INIT(mutant_reference_list, list( "xenohead" = GLOB.xeno_head_list, "xenotail" = GLOB.xeno_tail_list)) - +//references wag types to regular types, wings open to wings, etc +GLOBAL_LIST_INIT(mutant_transform_list, list("wingsopen" = "wings", + "waggingtail_human" = "tail_human", + "waggingtail_lizard" = "tail_lizard", + "waggingspines" = "spines", + "mam_waggingtail" = "mam_tail")) 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 diff --git a/code/modules/mob/dead/new_player/sprite_accessories/spines.dm b/code/modules/mob/dead/new_player/sprite_accessories/spines.dm index 53a5650a05..83415ed375 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/spines.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/spines.dm @@ -10,7 +10,8 @@ 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"]) + 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 name = "None" icon_state = "none" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/tails.dm b/code/modules/mob/dead/new_player/sprite_accessories/tails.dm index 0afbeaf070..812e0c052c 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/tails.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/tails.dm @@ -16,7 +16,7 @@ *******************************************/ /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"]) + return (((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric) || H.dna.species.mutant_bodyparts["tail_lizard"]) /datum/sprite_accessory/tails/lizard/smooth name = "Smooth" @@ -104,8 +104,8 @@ icon_state = "none" 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_animated/human/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 name = "Red Panda" @@ -547,7 +547,7 @@ 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) - return ((H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR)) || tauric || H.dna.species.mutant_bodyparts["mam_tail"]) + 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" diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index ee1ebe4506..e132ea615f 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -648,7 +648,11 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) var/reference_list = GLOB.mutant_reference_list[mutant_part] if(reference_list) var/datum/sprite_accessory/S - S = reference_list[H.dna.features[mutant_part]] + var/transformed_part = GLOB.mutant_transform_list[mutant_part] + if(transformed_part) + S = reference_list[H.dna.features[transformed_part]] + else + S = reference_list[H.dna.features[mutant_part]] if(!S || S.is_not_visible(H, tauric)) bodyparts_to_add -= mutant_part From 20648fc1bb0c0beea3a810c40a8ef02f39d761be Mon Sep 17 00:00:00 2001 From: Changelogs Date: Tue, 18 Aug 2020 00:12:17 +0000 Subject: [PATCH 10/15] Automatic changelog compile [ci skip] --- html/changelog.html | 87 ++++++++++++++++------ html/changelogs/.all_changelog.yml | 54 ++++++++++++++ html/changelogs/AutoChangeLog-pr-13037.yml | 5 -- html/changelogs/AutoChangeLog-pr-13045.yml | 5 -- html/changelogs/AutoChangeLog-pr-13067.yml | 4 - html/changelogs/AutoChangeLog-pr-13092.yml | 4 - html/changelogs/AutoChangeLog-pr-13108.yml | 4 - html/changelogs/AutoChangeLog-pr-13110.yml | 4 - html/changelogs/AutoChangeLog-pr-13122.yml | 4 - html/changelogs/AutoChangeLog-pr-13124.yml | 7 -- html/changelogs/AutoChangeLog-pr-13135.yml | 4 - html/changelogs/AutoChangeLog-pr-13141.yml | 4 - html/changelogs/AutoChangeLog-pr-13144.yml | 5 -- html/changelogs/AutoChangeLog-pr-13148.yml | 4 - html/changelogs/AutoChangeLog-pr-13159.yml | 4 - html/changelogs/AutoChangeLog-pr-13164.yml | 5 -- html/changelogs/AutoChangeLog-pr-13167.yml | 4 - html/changelogs/AutoChangeLog-pr-13168.yml | 4 - html/changelogs/AutoChangeLog-pr-13169.yml | 4 - html/changelogs/AutoChangeLog-pr-13176.yml | 5 -- html/changelogs/AutoChangeLog-pr-13179.yml | 4 - html/changelogs/AutoChangeLog-pr-13180.yml | 4 - html/changelogs/AutoChangeLog-pr-13185.yml | 4 - html/changelogs/AutoChangeLog-pr-13190.yml | 4 - html/changelogs/AutoChangeLog-pr-13195.yml | 4 - 25 files changed, 119 insertions(+), 122 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-13037.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13045.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13067.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13092.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13108.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13110.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13122.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13124.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13135.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13141.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13144.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13148.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13159.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13164.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13167.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13168.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13169.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13176.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13179.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13180.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13185.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13190.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-13195.yml diff --git a/html/changelog.html b/html/changelog.html index 2159cfd50c..56bb7500b4 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -50,6 +50,71 @@ -->
+

18 August 2020

+

DeltaFire15 updated:

+
    +
  • kindle cast time: 15ds -> 25ds
  • +
  • Moved the Belligerent Scripture to where it should be in the code
  • +
+

Detective-Google updated:

+
    +
  • glass floors
  • +
  • uncrowbarrable plasma floors tweak:disco inferno's plasma floors can no longer be crowbarred.
  • +
  • ghost cafe has funky fresh art
  • +
  • you can actually remove glass floors now
  • +
  • get_equipped_items is hopefully less gross
  • +
  • plasma cutters are no longer gay
  • +
+

Hatterhat updated:

+
    +
  • Slaughter demons (and laughter demons, being a subtype) are MOB_SIZE_LARGE, with one of the more immediate effects being able to mark them with a crusher and backstab them.
  • +
  • The funny blyat men have stumbled upon another surplus of Mosin-Nagants and are starting to pack them into crates again.
  • +
  • Vehicle riders can now, by default, get shot in the face and/or chest.
  • +
  • Adminspawn only .357 DumDum rounds! Because sometimes the other guy just really needs to hurt.
  • +
  • Bluespace beakers now have a chemical window through the side that shows chemical overlays.
  • +
  • Plant DNA manipulators now let you chuck things over them. Or they WOULD, if LETPASSTHROW worked half a damn.
  • +
+

LetterN updated:

+
    +
  • uplink implant states
  • +
  • tweaks how role assigning works
  • +
+

MrJWhit updated:

+
    +
  • Gives ashwalkers nightvision
  • +
  • Makes tesla blast people, not the environment, to save the server.
  • +
+

TheObserver-sys updated:

+
    +
  • moves Garlic sprites from growing.dmi to growing_vegetable.dmi
  • +
  • Removes the unused Electric Lime mutation, it just takes up space with no actual function nor sprites.
  • +
  • Gives Catnip growing sprites
  • +
  • Removes redundant images in growing.dmi
  • +
+

kiwedespars updated:

+
    +
  • 10 force to a fucking rubber cock.
  • +
+

lolman360 updated:

+
    +
  • shotgun stripper clip nerf. ammoboxes can now accept a load_delay that happens when they attack a magazine, internal or external.
  • +
+

ported from tg updated:

+
    +
  • bronze airlocks and windows can now be built
  • +
  • i also tweaked bronze flooring to be cheaper.
  • +
+

silicons updated:

+
    +
  • stamina draining projectiles without stamina for their primary damage type now has their stamina damage taken into account for shield blocking, rather than the block being done for free for that.
  • +
+

timothyteakettle updated:

+
    +
  • snowflake code tidyup
  • +
  • snowflake code for mutant bodypart selection has been rewritten to be ~14x shorter
  • +
  • meat type and horns can now be selected by any species
  • +
+

17 August 2020

DeltaFire15 updated:

    @@ -1380,28 +1445,6 @@
    • Gin export takes gin now
    - -

    16 June 2020

    -

    Ghommie updated:

    -
      -
    • You can't blink nor use LOOC/AOOC as a petrified statue anymore.
    • -
    -

    Trilbyspaceclone updated:

    -
      -
    • BEPIS decal painter has been moved to venders, replacing it being the flashdark
    • -
    -

    kevinz000 updated:

    -
      -
    • projectile ricochets now use a less hilariously terrible way of being handled and should be easier to w
    • -
    • projectile runtime/ricocheting
    • -
    • Lobotomy no longer has a 50% chance of giving you a nigh-unremovable trauma, but does 50 brain damage even on success. On failure, it will give you a lobotomy-class trauma.
    • -
    • spinesnapping from tackling now only gives a lobotomy class trauma instead of magic.
    • -
    -

    timothyteakettle updated:

    -
      -
    • Food carts now function as intended, allowing the pouring and mixing of drinks.
    • -
    • slimes can now change their color using alter form
    • -
GoonStation 13 Development Team diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 1efccd666e..f8749c8dc5 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -26944,3 +26944,57 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. 3.0](https://creativecommons.org/licenses/by-nc-sa/3.0/) - rscadd: Added CC BY-NC-SA 3.0 license details to icon/mob/cyborg moved drakeborg.dmi to icon/mob/cyborg +2020-08-18: + DeltaFire15: + - balance: 'kindle cast time: 15ds -> 25ds' + - tweak: Moved the Belligerent Scripture to where it should be in the code + Detective-Google: + - rscadd: glass floors + - rscadd: uncrowbarrable plasma floors tweak:disco inferno's plasma floors can no + longer be crowbarred. + - rscadd: ghost cafe has funky fresh art + - bugfix: you can actually remove glass floors now + - code_imp: get_equipped_items is hopefully less gross + - balance: plasma cutters are no longer gay + Hatterhat: + - balance: Slaughter demons (and laughter demons, being a subtype) are MOB_SIZE_LARGE, + with one of the more immediate effects being able to mark them with a crusher + and backstab them. + - balance: The funny blyat men have stumbled upon another surplus of Mosin-Nagants + and are starting to pack them into crates again. + - balance: Vehicle riders can now, by default, get shot in the face and/or chest. + - rscadd: Adminspawn only .357 DumDum rounds! Because sometimes the other guy just + really needs to hurt. + - rscadd: Bluespace beakers now have a chemical window through the side that shows + chemical overlays. + - rscadd: Plant DNA manipulators now let you chuck things over them. Or they WOULD, + if LETPASSTHROW worked half a damn. + LetterN: + - bugfix: uplink implant states + - tweak: tweaks how role assigning works + MrJWhit: + - rscadd: Gives ashwalkers nightvision + - balance: Makes tesla blast people, not the environment, to save the server. + TheObserver-sys: + - bugfix: moves Garlic sprites from growing.dmi to growing_vegetable.dmi + - rscdel: Removes the unused Electric Lime mutation, it just takes up space with + no actual function nor sprites. + - imageadd: Gives Catnip growing sprites + - imagedel: Removes redundant images in growing.dmi + kiwedespars: + - rscadd: 10 force to a fucking rubber cock. + lolman360: + - balance: shotgun stripper clip nerf. ammoboxes can now accept a load_delay that + happens when they attack a magazine, internal or external. + ported from tg: + - rscadd: bronze airlocks and windows can now be built + - balance: i also tweaked bronze flooring to be cheaper. + silicons: + - tweak: stamina draining projectiles without stamina for their primary damage type + now has their stamina damage taken into account for shield blocking, rather + than the block being done for free for that. + timothyteakettle: + - refactor: snowflake code tidyup + - refactor: snowflake code for mutant bodypart selection has been rewritten to be + ~14x shorter + - tweak: meat type and horns can now be selected by any species diff --git a/html/changelogs/AutoChangeLog-pr-13037.yml b/html/changelogs/AutoChangeLog-pr-13037.yml deleted file mode 100644 index 83dba115e9..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13037.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "timothyteakettle" -delete-after: True -changes: - - refactor: "snowflake code for mutant bodypart selection has been rewritten to be ~14x shorter" - - tweak: "meat type and horns can now be selected by any species" diff --git a/html/changelogs/AutoChangeLog-pr-13045.yml b/html/changelogs/AutoChangeLog-pr-13045.yml deleted file mode 100644 index ea813fe8c4..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13045.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "ported from tg" -delete-after: True -changes: - - rscadd: "bronze airlocks and windows can now be built" - - balance: "i also tweaked bronze flooring to be cheaper." diff --git a/html/changelogs/AutoChangeLog-pr-13067.yml b/html/changelogs/AutoChangeLog-pr-13067.yml deleted file mode 100644 index 48e760b002..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13067.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Hatterhat" -delete-after: True -changes: - - balance: "The funny blyat men have stumbled upon another surplus of Mosin-Nagants and are starting to pack them into crates again." diff --git a/html/changelogs/AutoChangeLog-pr-13092.yml b/html/changelogs/AutoChangeLog-pr-13092.yml deleted file mode 100644 index fd8e39800f..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13092.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "silicons" -delete-after: True -changes: - - tweak: "stamina draining projectiles without stamina for their primary damage type now has their stamina damage taken into account for shield blocking, rather than the block being done for free for that." diff --git a/html/changelogs/AutoChangeLog-pr-13108.yml b/html/changelogs/AutoChangeLog-pr-13108.yml deleted file mode 100644 index 6529683cdb..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13108.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Hatterhat" -delete-after: True -changes: - - rscadd: "Adminspawn only .357 DumDum rounds! Because sometimes the other guy just really needs to hurt." diff --git a/html/changelogs/AutoChangeLog-pr-13110.yml b/html/changelogs/AutoChangeLog-pr-13110.yml deleted file mode 100644 index 86580ddc49..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13110.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "timothyteakettle" -delete-after: True -changes: - - refactor: "snowflake code tidyup" diff --git a/html/changelogs/AutoChangeLog-pr-13122.yml b/html/changelogs/AutoChangeLog-pr-13122.yml deleted file mode 100644 index 1f5b12d515..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13122.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "lolman360" -delete-after: True -changes: - - balance: "shotgun stripper clip nerf. ammoboxes can now accept a load_delay that happens when they attack a magazine, internal or external." diff --git a/html/changelogs/AutoChangeLog-pr-13124.yml b/html/changelogs/AutoChangeLog-pr-13124.yml deleted file mode 100644 index 8b53557df4..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13124.yml +++ /dev/null @@ -1,7 +0,0 @@ -author: "TheObserver-sys" -delete-after: True -changes: - - bugfix: "moves Garlic sprites from growing.dmi to growing_vegetable.dmi" - - rscdel: "Removes the unused Electric Lime mutation, it just takes up space with no actual function nor sprites." - - imageadd: "Gives Catnip growing sprites" - - imagedel: "Removes redundant images in growing.dmi" diff --git a/html/changelogs/AutoChangeLog-pr-13135.yml b/html/changelogs/AutoChangeLog-pr-13135.yml deleted file mode 100644 index d147ca78e1..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13135.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "LetterN" -delete-after: True -changes: - - tweak: "tweaks how role assigning works" diff --git a/html/changelogs/AutoChangeLog-pr-13141.yml b/html/changelogs/AutoChangeLog-pr-13141.yml deleted file mode 100644 index c4e3e321da..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13141.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "MrJWhit" -delete-after: True -changes: - - rscadd: "Gives ashwalkers nightvision" diff --git a/html/changelogs/AutoChangeLog-pr-13144.yml b/html/changelogs/AutoChangeLog-pr-13144.yml deleted file mode 100644 index 7f46d1ee4e..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13144.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Hatterhat" -delete-after: True -changes: - - rscadd: "Bluespace beakers now have a chemical window through the side that shows chemical overlays." - - rscadd: "Plant DNA manipulators now let you chuck things over them. Or they WOULD, if LETPASSTHROW worked half a damn." diff --git a/html/changelogs/AutoChangeLog-pr-13148.yml b/html/changelogs/AutoChangeLog-pr-13148.yml deleted file mode 100644 index 7f6807d6c9..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13148.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Hatterhat" -delete-after: True -changes: - - balance: "Vehicle riders can now, by default, get shot in the face and/or chest." diff --git a/html/changelogs/AutoChangeLog-pr-13159.yml b/html/changelogs/AutoChangeLog-pr-13159.yml deleted file mode 100644 index fc3b0ef634..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13159.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "kiwedespars" -delete-after: True -changes: - - rscadd: "10 force to a fucking rubber cock." diff --git a/html/changelogs/AutoChangeLog-pr-13164.yml b/html/changelogs/AutoChangeLog-pr-13164.yml deleted file mode 100644 index a8eed52b1a..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13164.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Detective-Google" -delete-after: True -changes: - - rscadd: "uncrowbarrable plasma floors -tweak:disco inferno's plasma floors can no longer be crowbarred." diff --git a/html/changelogs/AutoChangeLog-pr-13167.yml b/html/changelogs/AutoChangeLog-pr-13167.yml deleted file mode 100644 index 6bc9058114..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13167.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Detective-Google" -delete-after: True -changes: - - balance: "plasma cutters are no longer gay" diff --git a/html/changelogs/AutoChangeLog-pr-13168.yml b/html/changelogs/AutoChangeLog-pr-13168.yml deleted file mode 100644 index 108f7ad8a0..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13168.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "MrJWhit" -delete-after: True -changes: - - balance: "Makes tesla blast people, not the environment, to save the server." diff --git a/html/changelogs/AutoChangeLog-pr-13169.yml b/html/changelogs/AutoChangeLog-pr-13169.yml deleted file mode 100644 index 83abbb6992..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13169.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "LetterN" -delete-after: True -changes: - - bugfix: "uplink implant states" diff --git a/html/changelogs/AutoChangeLog-pr-13176.yml b/html/changelogs/AutoChangeLog-pr-13176.yml deleted file mode 100644 index 68429def3c..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13176.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "DeltaFire15" -delete-after: True -changes: - - balance: "kindle cast time: 15ds -> 25ds" - - tweak: "Moved the Belligerent Scripture to where it should be in the code" diff --git a/html/changelogs/AutoChangeLog-pr-13179.yml b/html/changelogs/AutoChangeLog-pr-13179.yml deleted file mode 100644 index 5ec47abe8b..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13179.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Detective-Google" -delete-after: True -changes: - - code_imp: "get_equipped_items is hopefully less gross" diff --git a/html/changelogs/AutoChangeLog-pr-13180.yml b/html/changelogs/AutoChangeLog-pr-13180.yml deleted file mode 100644 index 7f13cef901..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13180.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Detective-Google" -delete-after: True -changes: - - rscadd: "glass floors" diff --git a/html/changelogs/AutoChangeLog-pr-13185.yml b/html/changelogs/AutoChangeLog-pr-13185.yml deleted file mode 100644 index fcdd4a0406..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13185.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Hatterhat" -delete-after: True -changes: - - balance: "Slaughter demons (and laughter demons, being a subtype) are MOB_SIZE_LARGE, with one of the more immediate effects being able to mark them with a crusher and backstab them." diff --git a/html/changelogs/AutoChangeLog-pr-13190.yml b/html/changelogs/AutoChangeLog-pr-13190.yml deleted file mode 100644 index 8e67f39ec4..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13190.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Detective-Google" -delete-after: True -changes: - - rscadd: "ghost cafe has funky fresh art" diff --git a/html/changelogs/AutoChangeLog-pr-13195.yml b/html/changelogs/AutoChangeLog-pr-13195.yml deleted file mode 100644 index 878b7bb3ad..0000000000 --- a/html/changelogs/AutoChangeLog-pr-13195.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Detective-Google" -delete-after: True -changes: - - bugfix: "you can actually remove glass floors now" From d312a5d639db5a829edc0cd0412e3a2709347589 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 18 Aug 2020 01:32:06 +0100 Subject: [PATCH 11/15] fix tails --- code/modules/mob/living/carbon/human/species.dm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index e132ea615f..230a634e0e 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -694,7 +694,11 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) var/reference_list = GLOB.mutant_reference_list[bodypart] if(reference_list) var/datum/sprite_accessory/S - S = reference_list[H.dna.features[bodypart]] + var/transformed_part = GLOB.mutant_transform_list[bodypart] + if(transformed_part) + S = reference_list[H.dna.features[transformed_part]] + else + S = reference_list[H.dna.features[bodypart]] if(!S || S.icon_state == "none") continue From 13609ba6e69f6d6ab002ed127727ec806b310da1 Mon Sep 17 00:00:00 2001 From: tiramisuapimancer <32314478+tiramisuapimancer@users.noreply.github.com> Date: Mon, 17 Aug 2020 23:01:01 -0800 Subject: [PATCH 12/15] Update ethereal.dm --- code/modules/mob/living/carbon/human/species_types/ethereal.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/species_types/ethereal.dm b/code/modules/mob/living/carbon/human/species_types/ethereal.dm index cda6faded0..cd9b3b80c7 100644 --- a/code/modules/mob/living/carbon/human/species_types/ethereal.dm +++ b/code/modules/mob/living/carbon/human/species_types/ethereal.dm @@ -27,7 +27,7 @@ // Cold temperatures hurt faster as it is harder to move with out the heat energy bodytemp_cold_damage_limit = (T20C - 10) // about 10c */ - hair_color = "fixedmutcolor" + hair_color = "mutcolor" hair_alpha = 140 var/current_color var/EMPeffect = FALSE From b50ccb980c37508ed04240b1ade8d61d7104dc8a Mon Sep 17 00:00:00 2001 From: Changelogs Date: Wed, 19 Aug 2020 00:13:00 +0000 Subject: [PATCH 13/15] Automatic changelog compile [ci skip] --- html/changelog.html | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/html/changelog.html b/html/changelog.html index 56bb7500b4..43bac219ab 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -1434,17 +1434,6 @@
  • medbots can now be tipped over
  • added more medbot sounds
  • - -

    17 June 2020

    -

    SmArtKar updated:

    -
      -
    • New ID icons
    • -
    • Sutures and Meshes
    • -
    -

    Trilbyspaceclone updated:

    -
      -
    • Gin export takes gin now
    • -
    GoonStation 13 Development Team From ecff6bc36a451a5e87183379372eff27fb339dee Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Tue, 18 Aug 2020 20:53:24 -0500 Subject: [PATCH 14/15] Automatic changelog generation for PR #13194 [ci skip] --- html/changelogs/AutoChangeLog-pr-13194.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-13194.yml diff --git a/html/changelogs/AutoChangeLog-pr-13194.yml b/html/changelogs/AutoChangeLog-pr-13194.yml new file mode 100644 index 0000000000..8769abd6d5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-13194.yml @@ -0,0 +1,4 @@ +author: "DeltaFire15" +delete-after: True +changes: + - tweak: "Changed the clockie help-link to lead to our own wiki." From 6eac8800b62958a9dc85909976490b888d0e883c Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Tue, 18 Aug 2020 20:53:42 -0500 Subject: [PATCH 15/15] Automatic changelog generation for PR #13202 [ci skip] --- html/changelogs/AutoChangeLog-pr-13202.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-13202.yml diff --git a/html/changelogs/AutoChangeLog-pr-13202.yml b/html/changelogs/AutoChangeLog-pr-13202.yml new file mode 100644 index 0000000000..8713ea2bd9 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-13202.yml @@ -0,0 +1,4 @@ +author: "tiramisuapimancer" +delete-after: True +changes: + - bugfix: "Ethereal hair is now their body color instead of accidentally white"