Skip to content

Commit

Permalink
Monkeys now use filters & Simians are now monkeys (Attempt #2) (Monke…
Browse files Browse the repository at this point in the history
…station#3846)

* simians are subtypes of monkey

* Update humans.dm

* Create screenshot_humanoids__datum_species_monkey_simian.png

* Update high_five.dm

* Revert "Update high_five.dm"

This reverts commit 3585b0a.

* Fixes simian eyes & pref page image

* monkey tail pref icon

* Update head.dm

* screenshot tests

* Update simian.dm

* Update simian.dm

* Update screenshot_humanoids__datum_species_monkey_simian.png

* now advancedtoolusers

* ports how TG handles applying height filters

This makes it not work in pref menu properly but should hopefully cut down on the amount of times it gets called.

* takes the lazy way out to fix hats

* all hail the one line fixes

* Fixes butchering monkeys/simians

* Simian gags is kil

* teratomas cant use monkey parts anymore

* Adds comments for non modular changes

* Fixes belts looking off

* Update simian.dm

* Monkeys now have fur and eyes

* Update monkestation/code/game/objects/items/translation_hat.dm

Co-authored-by: wraith-54321 <69217972+wraith-54321@users.noreply.github.com>

* updated screenshot tests

* cuts down on unnecessary things

* Update _species.dm

* Less unnecessary calls for updating bodies

Monkestation seems to have a lot of unnecessary calls to update body, this cuts down on a few of them. TG's species-nuking PRs might be good to help against this.

* one less call to update body parts

* Hopefully cuts down more on needless calls

By fully reverting a PR (Monkestation#363) that became non functional after a few big port PRs overwrote the stuff it did, creating a mess.

* Update body.dm

* removes double regenerate icons call

* no need to update body parts every time we change prefs

---------

Co-authored-by: wraith-54321 <69217972+wraith-54321@users.noreply.github.com>
  • Loading branch information
JohnFulpWillard and wraith-54321 authored Oct 31, 2024
1 parent 8120c90 commit dcf6509
Show file tree
Hide file tree
Showing 109 changed files with 563 additions and 1,025 deletions.
2 changes: 1 addition & 1 deletion _maps/map_files/Blueshift/Blueshift.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -88249,7 +88249,7 @@
/obj/structure/window/reinforced/tinted/spawner/directional/west,
/obj/effect/decal/cleanable/dirt,
/obj/structure/toiletbong,
/obj/item/bodypart/head/simian,
/obj/item/bodypart/head/monkey,
/obj/effect/decal/cleanable/blood/old{
icon_state = "floor5-old"
},
Expand Down
11 changes: 0 additions & 11 deletions code/__DEFINES/clothing_paths.dm
Original file line number Diff line number Diff line change
@@ -1,14 +1,3 @@
#define SIMIAN_UNIFORM_ICON 'monkestation/icons/mob/clothing/species/simian/uniform.dmi'
#define SIMIAN_SUIT_ICON 'monkestation/icons/mob/clothing/species/simian/suit.dmi'
#define SIMIAN_BACK_ICON 'monkestation/icons/mob/clothing/species/simian/back.dmi'
#define SIMIAN_BELT_ICON 'monkestation/icons/mob/clothing/species/simian/belts.dmi'
#define SIMIAN_GLASSES_ICON 'monkestation/icons/mob/clothing/species/simian/glasses.dmi'
#define SIMIAN_GLOVES_ICON 'monkestation/icons/mob/clothing/species/simian/gloves.dmi'
#define SIMIAN_NECK_ICON 'monkestation/icons/mob/clothing/species/simian/neck.dmi'
#define SIMIAN_SHOES_ICON 'monkestation/icons/mob/clothing/species/simian/shoes.dmi'



#define LOADOUT_ITEM_BELT "belt"
#define LOADOUT_ITEM_EARS "ears"
#define LOADOUT_ITEM_GLASSES "glasses"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
// These COLORPIXEL defines indicate the pixel position on the base sprite of a clothing piece from which the color will be taken.
// Only 4 of these are used, for digi lizards. Rest have been removed once Simians were changed to use filters instead.
/*
#define GLASSES_COLORPIXEL_X_1 10
#define GLASSES_COLORPIXEL_Y_1 16
#define GLASSES_COLORPIXEL_X_2 18
Expand Down Expand Up @@ -40,12 +42,15 @@
#define CLOAK_COLORPIXEL_X_2 12
#define CLOAK_COLORPIXEL_Y_2 22
*/
#define UNDER_COLORPIXEL_X_1 15
#define UNDER_COLORPIXEL_Y_1 17
#define UNDER_COLORPIXEL_X_2 10
#define UNDER_COLORPIXEL_Y_2 19
/*
#define UNDER_COLORPIXEL_X_3 15
#define UNDER_COLORPIXEL_Y_3 10
#define BACK_COLORPIXEL_X_1 13
#define BACK_COLORPIXEL_Y_1 18
*/
3 changes: 3 additions & 0 deletions code/__DEFINES/colors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -352,3 +352,6 @@ GLOBAL_LIST_INIT(cable_colors, list(
CABLE_COLOR_YELLOW = CABLE_HEX_COLOR_YELLOW,
CABLE_COLOR_BROWN = CABLE_HEX_COLOR_BROWN
))

//Monkestation non-modular change: This has to be here because we use it in setup_consistent_human_dna
#define COLOR_MONKEY_BROWN "#cd8765"
18 changes: 15 additions & 3 deletions code/__DEFINES/inventory.dm
Original file line number Diff line number Diff line change
Expand Up @@ -128,17 +128,29 @@
#define ALT_STYLE 1
#define DIGITIGRADE_STYLE 2

///Inventory slots that can be blacklisted by a species from being equipped into
DEFINE_BITFIELD(no_equip_flags, list(
"EXOSUIT" = ITEM_SLOT_OCLOTHING,
"JUMPSUIT" = ITEM_SLOT_ICLOTHING,
"GLOVES" = ITEM_SLOT_GLOVES,
"GLASSES" = ITEM_SLOT_EYES,
"EARPIECES" = ITEM_SLOT_EARS,
"MASKS" = ITEM_SLOT_MASK,
"HATS" = ITEM_SLOT_HEAD,
"SHOES" = ITEM_SLOT_FEET,
"BACKPACKS" = ITEM_SLOT_BACK,
"TIES" = ITEM_SLOT_NECK,
))

//Flags (actual flags, fucker ^) for /obj/item/var/supports_variations_flags
///No alternative sprites based on bodytype
#define CLOTHING_NO_VARIATION (1<<0)
///Has a sprite for digitigrade legs specifically.
#define CLOTHING_DIGITIGRADE_VARIATION (1<<1)
///The sprite works fine for digitigrade legs as-is.
#define CLOTHING_DIGITIGRADE_VARIATION_NO_NEW_ICON (1<<2)
///has a sprite for monkeys
#define CLOTHING_MONKEY_VARIATION (1<<3)
///Has a sprite for snouted heads specifically.
#define CLOTHING_SNOUTED_VARIATION (1<<4)
#define CLOTHING_SNOUTED_VARIATION (1<<3)

//flags for covering body parts
#define GLASSESCOVERSEYES (1<<0)
Expand Down
1 change: 0 additions & 1 deletion code/__DEFINES/is_helpers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,6 @@ GLOBAL_LIST_INIT(turfs_openspace, typecacheof(list(
#define islizard(A) (is_species(A, /datum/species/lizard))
#define isashwalker(A) (is_species(A, /datum/species/lizard/ashwalker))
#define isplasmaman(A) (is_species(A, /datum/species/plasmaman))
#define issimian(A) (is_species(A, /datum/species/simian)) //Monkestation Addition
#define ispodperson(A) (is_species(A, /datum/species/pod))
#define isflyperson(A) (is_species(A, /datum/species/fly))
#define isjellyperson(A) (is_species(A, /datum/species/jelly))
Expand Down
36 changes: 18 additions & 18 deletions code/__DEFINES/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -113,8 +113,6 @@
#define SPECIES_LIZARD_SILVER "silverscale"
#define SPECIES_NIGHTMARE "nightmare"
#define SPECIES_MONKEY "monkey"
#define SPECIES_MONKEY_FREAK "monkey_freak"
#define SPECIES_MONKEY_HUMAN_LEGGED "monkey_human_legged"
#define SPECIES_MOTH "moth"
#define SPECIES_MUSHROOM "mush"
#define SPECIES_PLASMAMAN "plasmaman"
Expand Down Expand Up @@ -649,17 +647,22 @@
// - They do not start at 0 for futureproofing
// - They skip numbers for futureproofing as well
// Otherwise they are completely arbitrary
#define HUMAN_HEIGHT_DWARF 2
#define HUMAN_HEIGHT_SHORTEST 4
#define HUMAN_HEIGHT_SHORT 6
#define HUMAN_HEIGHT_MEDIUM 8
#define HUMAN_HEIGHT_TALL 10
#define HUMAN_HEIGHT_TALLEST 12
#define MONKEY_HEIGHT_DWARF 2
#define MONKEY_HEIGHT_MEDIUM 4
#define HUMAN_HEIGHT_DWARF 6
#define HUMAN_HEIGHT_SHORTEST 8
#define HUMAN_HEIGHT_SHORT 10
#define HUMAN_HEIGHT_MEDIUM 12
#define HUMAN_HEIGHT_TALL 14
#define HUMAN_HEIGHT_TALLER 16
#define HUMAN_HEIGHT_TALLEST 18

/// Assoc list of all heights, cast to strings, to """"tuples"""""
/// The first """tuple""" index is the upper body offset
/// The second """tuple""" index is the lower body offset
GLOBAL_LIST_INIT(human_heights_to_offsets, list(
"[MONKEY_HEIGHT_DWARF]" = list(-9, -3),
"[MONKEY_HEIGHT_MEDIUM]" = list(-7, -4),
"[HUMAN_HEIGHT_DWARF]" = list(-5, -4),
"[HUMAN_HEIGHT_SHORTEST]" = list(-2, -1),
"[HUMAN_HEIGHT_SHORT]" = list(-1, -1),
Expand All @@ -672,21 +675,19 @@ GLOBAL_LIST_INIT(human_heights_to_offsets, list(
/// Total number of layers for mob overlays
/// KEEP THIS UP-TO-DATE OR SHIT WILL BREAK
/// Also consider updating layers_to_offset
#define TOTAL_LAYERS 35
#define TOTAL_LAYERS 34
/// Mutant race multiparts - Lbelly
#define ACCESSORIES_LAYER 35
#define ACCESSORIES_LAYER 34
/// Mutations layer - Tk headglows, cold resistance glow, etc
#define MUTATIONS_LAYER 34
#define MUTATIONS_LAYER 33
/// Mutantrace features (tail when looking south) that must appear behind the body parts
#define BODY_BEHIND_LAYER 33
#define BODY_BEHIND_LAYER 32
/// Layer for bodyparts that should appear behind every other bodypart - Mostly, legs when facing WEST or EAST
#define BODYPARTS_LOW_LAYER 32
#define BODYPARTS_LOW_LAYER 31
/// Layer for most bodyparts, appears above BODYPARTS_LOW_LAYER and below BODYPARTS_HIGH_LAYER
#define BODYPARTS_LAYER 31
#define BODYPARTS_LAYER 30
/// Mutantrace features (snout, body markings) that must appear above the body parts
#define BODY_ADJ_LAYER 30
// Eyes, lips(makeup)
#define FACE_LAYER 29
#define BODY_ADJ_LAYER 29
/// Underwear, undershirts, socks
#define BODY_LAYER 28
/// Mutations that should appear above body, body_adj and bodyparts layer (e.g. laser eyes)
Expand Down Expand Up @@ -773,7 +774,6 @@ GLOBAL_LIST_INIT(layers_to_offset, list(
"[ID_LAYER]" = UPPER_BODY,
"[FACEMASK_LAYER]" = UPPER_BODY,
monkestation end */
"[FACE_LAYER]" = UPPER_BODY,
// These two are cached, and have their appearance shared(?), so it's safer to just not touch it
"[MUTATIONS_LAYER]" = NO_MODIFY,
"[FRONT_MUTATIONS_LAYER]" = NO_MODIFY,
Expand Down
7 changes: 0 additions & 7 deletions code/__DEFINES/research/anomalies.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,18 +20,11 @@
GLOBAL_LIST_INIT(bioscrambler_parts_blacklist, typecacheof(list(
/obj/item/bodypart/chest/larva,
/obj/item/bodypart/head/larva,
// Re-add the ones below this line when the bug with offset is fixed
/obj/item/bodypart/leg/left/monkey,
/obj/item/bodypart/leg/right/monkey,
/obj/item/bodypart/leg/left/tallboy,
/obj/item/bodypart/leg/right/tallboy,
)))

/// Blacklist of limb IDs which should not appear when bioscrambled, mostly because they looks awful and buggy.
GLOBAL_LIST_INIT(bioscrambler_limb_id_blacklist, list(
BODYPART_ID_PSYKER,
SPECIES_SIMIAN,
SPECIES_MONKEY,
SPECIES_GOBLIN,
SPECIES_TERATOMA,
))
Expand Down
4 changes: 0 additions & 4 deletions code/__DEFINES/species_clothing_paths.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,6 @@
///The dmi for humanoid oversuits
#define DEFAULT_SUIT_FILE 'icons/mob/clothing/suits/default.dmi'

//MONKEY PATHS
///The dmi for monkey uniforms
#define MONKEY_UNIFORM_FILE 'icons/mob/species/monkey/uniform.dmi'

//DIGITIGRADE PATHS
///The dmi containing digitigrade uniforms
#define DIGITIGRADE_UNIFORM_FILE 'monkestation/icons/mob/species/misc/uniform_digi.dmi'
Expand Down
3 changes: 1 addition & 2 deletions code/__DEFINES/traits/monkestation/declarations.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
/// The mob's nanites are sending a monitoring signal visible on diag HUD.
#define TRAIT_NANITE_MONITORING "nanite_monitoring"
/// This mob can vault over climable structures.
#define TRAIT_VAULTING "vaulting" //simian trait
#define TRAIT_VAULTING "vaulting"
/// Ethereals with this trait will not suffer negative effects from overcharge.
#define TRAIT_ETHEREAL_NO_OVERCHARGE "ethereal_no_overcharge"
/// Oozelings with this trait will not lose limbs from low blood/nutrition.
Expand Down Expand Up @@ -83,7 +83,6 @@
#define TRAIT_HIDDEN_CLOWN "clown_disbelief"
#define TRAIT_HIDDEN_IMAGE "generic-hidden-image"
#define TRAIT_JAILBIRD "jailbird"
#define TRAIT_KLEPTOMANIAC "kleptomaniac"
#define TRAIT_LOUD_ASS "loud_ass"
#define TRAIT_MINING_CALLOUTS "miner_callouts"
#define TRAIT_PARANOIA "paranoia"
Expand Down
2 changes: 1 addition & 1 deletion code/__HELPERS/global_lists.dm
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_antennas, GLOB.ipc_antennas_list) //Monkestation Addition
init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_chassis, GLOB.ipc_chassis_list) //Monkestation Addition
init_sprite_accessory_subtypes(/datum/sprite_accessory/pod_hair, GLOB.pod_hair_list) //Monkestation Addition
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/monkey, GLOB.tails_list_monkey) //Monkestation Addition
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/monkey, GLOB.tails_list_monkey)
init_sprite_accessory_subtypes(/datum/sprite_accessory/anime_head, GLOB.anime_top_list) //Monkestation Addition
init_sprite_accessory_subtypes(/datum/sprite_accessory/anime_middle, GLOB.anime_middle_list) //Monkestation Addition
init_sprite_accessory_subtypes(/datum/sprite_accessory/anime_bottom, GLOB.anime_bottom_list) //Monkestation Addition
Expand Down
6 changes: 3 additions & 3 deletions code/__HELPERS/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,8 @@
init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts, GLOB.snouts_list)
if(!length(GLOB.horns_list))
init_sprite_accessory_subtypes(/datum/sprite_accessory/horns, GLOB.horns_list)
if(!length(GLOB.tails_list_monkey))
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/monkey, GLOB.tails_list_monkey)
if(!length(GLOB.ears_list))
init_sprite_accessory_subtypes(/datum/sprite_accessory/ears, GLOB.horns_list)
if(!length(GLOB.frills_list))
Expand Down Expand Up @@ -108,8 +110,6 @@
init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_antennas, GLOB.ipc_antennas_list)
if(!length(GLOB.ipc_chassis_list))
init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_chassis, GLOB.ipc_chassis_list)
if(!length(GLOB.tails_list_monkey))
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/monkey, GLOB.tails_list_monkey)
if(!length(GLOB.anime_top_list))
init_sprite_accessory_subtypes(/datum/sprite_accessory/anime_head, GLOB.anime_top_list)
if(!length(GLOB.anime_middle_list))
Expand Down Expand Up @@ -163,7 +163,7 @@
"ipc_screen" = pick(GLOB.ipc_screens_list), //Monkestation Addition
"ipc_antenna" = pick(GLOB.ipc_antennas_list), //Monkestation Addition
"ipc_chassis" = pick(GLOB.ipc_chassis_list), //Monkestation Addition
"tail_monkey" = "Chimp", //Monkestation Addition
"tail_monkey" = "Monkey", //Monkestation change: Default to monkey tail.
"pod_hair" = pick(GLOB.pod_hair_list),
"anime_top" = pick(GLOB.anime_top_list), //Monkestation Addition
"anime_middle" = pick(GLOB.anime_middle_list), //Monkestation Addition
Expand Down
3 changes: 1 addition & 2 deletions code/_globalvars/lists/flavor_misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ GLOBAL_LIST_EMPTY(caps_list)
GLOBAL_LIST_EMPTY(pod_hair_list)
GLOBAL_LIST_EMPTY(ethereal_horns_list) //Monkestation Addition
GLOBAL_LIST_EMPTY(ethereal_tail_list) //Monkestation Addition
GLOBAL_LIST_EMPTY(tails_list_monkey) //Monkestation Addition
GLOBAL_LIST_EMPTY(tails_list_monkey)
GLOBAL_LIST_EMPTY(anime_top_list) //Monkestation Addition
GLOBAL_LIST_EMPTY(anime_middle_list) //Monkestation Addition
GLOBAL_LIST_EMPTY(anime_bottom_list) //Monkestation Addition
Expand All @@ -66,7 +66,6 @@ GLOBAL_LIST_INIT(color_list_ethereal, list(
"Cyan Blue" = "#00ffff",
"Dark Blue" = "#6666ff",
"Dark Fuschia" = "#C70064", //Monkestation Edit: #CC0066 TO #C70064

"Dark Green" = "#37835b",
"Dark Red" = "#9c3030",
"Dull Yellow" = "#fbdf56",
Expand Down
1 change: 0 additions & 1 deletion code/_globalvars/traits/_traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -290,7 +290,6 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_JAILBIRD" = TRAIT_JAILBIRD,
"TRAIT_JOLLY" = TRAIT_JOLLY,
"TRAIT_KISS_OF_DEATH" = TRAIT_KISS_OF_DEATH,
"TRAIT_KLEPTOMANIAC" = TRAIT_KLEPTOMANIAC,
"TRAIT_KNOCKEDOUT" = TRAIT_KNOCKEDOUT,
"TRAIT_KNOW_ENGI_WIRES" = TRAIT_KNOW_ENGI_WIRES,
"TRAIT_KNOW_ROBO_WIRES" = TRAIT_KNOW_ROBO_WIRES,
Expand Down
2 changes: 1 addition & 1 deletion code/_globalvars/~monkestation/lists/flavor_misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@ GLOBAL_LIST_INIT(body_heights, list(
"Short" = HUMAN_HEIGHT_SHORT,
"Normal" = HUMAN_HEIGHT_MEDIUM,
"Tall" = HUMAN_HEIGHT_TALL,
"Tallest" = HUMAN_HEIGHT_TALLEST
"Tallest" = HUMAN_HEIGHT_TALLEST,
))
6 changes: 4 additions & 2 deletions code/datums/ai/monkey/monkey_controller.dm
Original file line number Diff line number Diff line change
Expand Up @@ -161,8 +161,10 @@ have ways of interacting with a specific mob and control it.
var/obj/item/clothing/suit/costume/monkeysuit/S
var/obj/item/clothing/mask/gas/monkeymask/M
var/list/equipped = user.get_equipped_items(FALSE)
if(issimian(user))
ADD_TRAIT(user, TRAIT_MONKEYFRIEND, SPECIES_TRAIT)
if(iscarbon(user))
var/mob/living/carbon/carbon_user = user
if(TRAIT_MONKEYFRIEND in carbon_user?.dna?.species.inherent_traits)
ADD_TRAIT(user, TRAIT_MONKEYFRIEND, SPECIES_TRAIT)
if(((M in equipped) && (S in equipped)))
ADD_TRAIT(user, TRAIT_MONKEYFRIEND, CLOTHING_TRAIT)

Expand Down
10 changes: 10 additions & 0 deletions code/datums/datum.dm
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,16 @@
filter_data[name] = copied_parameters
update_filters()

///A version of add_filter that takes a list of filters to add rather than being individual, to limit calls to update_filters().
/datum/proc/add_filters(list/list/filters)
LAZYINITLIST(filter_data)
for(var/list/individual_filter as anything in filters)
var/list/params = individual_filter["params"]
var/list/copied_parameters = params.Copy()
copied_parameters["priority"] = individual_filter["priority"]
filter_data[individual_filter["name"]] = copied_parameters
update_filters()

/// Reapplies all the filters.
/datum/proc/update_filters()
ASSERT(isatom(src) || isimage(src))
Expand Down
4 changes: 1 addition & 3 deletions code/datums/dna.dm
Original file line number Diff line number Diff line change
Expand Up @@ -650,9 +650,7 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block())

if(icon_update)
dna.species.handle_body(src) // We want 'update_body_parts(update_limb_data = TRUE)' to be called only if mutcolor_update is TRUE, so no 'update_body()' here.
update_body_parts() //We can call this because it doesnt refresh limb data, and it handles hair and such.
if(mutcolor_update)
update_body_parts(update_limb_data = TRUE)
update_body_parts(update_limb_data = mutcolor_update) //We can call this because it doesnt refresh limb data, and it handles hair and such.
if(mutations_overlay_update)
update_mutations_overlay()

Expand Down
61 changes: 0 additions & 61 deletions code/datums/greyscale/config_types/greyscale_configs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1046,67 +1046,6 @@
icon_file = 'icons/mob/clothing/head/costume.dmi'
json_config = 'code/datums/greyscale/json_configs/party_hat.json'

/datum/greyscale_config/simian
name = "simian Clothing"
icon_file = 'monkestation/icons/mob/gags/clothing/simian_fallbacks.dmi'
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/under.json'

/datum/greyscale_config/simian/under
name = "simian Under"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/under.json'

/datum/greyscale_config/simian/under_skirt
name = "simian Skirt"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/under_skirt.json'

/datum/greyscale_config/simian/shoes
name = "simian Shoes"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/shoes.json'

/datum/greyscale_config/simian/gloves
name = "simian Gloves"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/gloves.json'

/datum/greyscale_config/simian/glasses
name = "simian Glasses"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/glasses.json'

/datum/greyscale_config/simian/coat
name = "simian Coat"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/coat.json'

/datum/greyscale_config/simian/armor
name = "simian Armor"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/armor.json'

/datum/greyscale_config/simian/backpack
name = "simian Backpack"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/backpack.json'

/datum/greyscale_config/simian/spacesuit
name = "simian Spacesuit"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/spacesuit.json'

/datum/greyscale_config/simian/cloak
name = "simian Cloak"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/cloak.json'

/datum/greyscale_config/simian/tie
name = "simian Tie"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/tie.json'

/datum/greyscale_config/simian/scarf
name = "simian Scarf"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/scarf.json'

/datum/greyscale_config/simian/modcontrol
name = "simian Modsuit"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/modcontrol.json'

/datum/greyscale_config/simian/hardsuit
name = "simian Hardsuit"
json_config = 'code/datums/greyscale/json_configs/simian_fallbacks/hardsuit.json'

/datum/greyscale_config/lizard
name = "lizard Clothing"
icon_file = 'monkestation/icons/mob/gags/clothing/lizard_fallbacks.dmi'
Expand Down
Loading

0 comments on commit dcf6509

Please sign in to comment.