This commit is contained in:
LetterJay
2017-02-04 10:35:30 -06:00
14 changed files with 559 additions and 34 deletions
+1
View File
@@ -41,6 +41,7 @@
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, mam_tails_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, mam_ears_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails_animated, mam_tails_animated_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/taur, taur_list)
//avian bodyparts (i swear this isn't starbound)
// init_sprite_accessory_subtypes(/datum/sprite_accessory/beaks/avian, avian_beaks_list)
// init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/avian, avian_tails_list)
+1
View File
@@ -36,6 +36,7 @@ var/global/list/mam_body_markings_list = list()
var/global/list/mam_ears_list = list()
var/global/list/mam_tails_list = list()
var/global/list/mam_tails_animated_list = list()
var/global/list/taur_list = list()
//Exotic Species
var/global/list/exotic_tails_list = list()
+16 -1
View File
@@ -62,7 +62,7 @@ var/list/preferences_datums = list()
var/eye_color = "000" //Eye color
var/datum/species/pref_species = new /datum/species/human() //Mutant race
var/list/features = list("mcolor" = "FFF", "mcolor2" = "FFF","mcolor3" = "FFF", "tail_lizard" = "Smooth", "tail_human" = "None", "snout" = "Round", "horns" = "None", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None", "mam_body_markings" = "None", "mam_ears" = "None", "mam_tail" = "None", "mam_tail_animated" = "None",
"xenodorsal" = "None", "xenohead" = "None", "xenotail" = "None", "legs" = "Normal Legs")
"xenodorsal" = "None", "xenohead" = "None", "xenotail" = "None", "legs" = "Normal Legs", "taur" = "None")
var/list/custom_names = list("clown", "mime", "ai", "cyborg", "religion", "deity")
var/prefered_security_department = SEC_DEPT_RANDOM
@@ -369,6 +369,15 @@ var/list/preferences_datums = list()
dat += "</td>"
if("taur" in pref_species.mutant_bodyparts)
dat += "<td valign='top' width='7%'>"
dat += "<h3>Taur Body</h3>"
dat += "<a href='?_src_=prefs;preference=taur;task=input'>[features["taur"]]</a><BR>"
dat += "</td>"
//Xeno Bodyparts
if("xenohead" in pref_species.mutant_bodyparts)
dat += "<td valign='top' width='7%'>"
@@ -1099,6 +1108,12 @@ var/list/preferences_datums = list()
if(new_tail)
features["mam_tail"] = new_tail
if("taur")
var/new_taur
new_taur = input(user, "Choose your character's tauric body:", "Character Preference") as null|anything in taur_list
if(new_taur)
features["taur"] = new_taur
/* Doesn't exist yet. will include facial overlays to mimic 5th port species heads.
if("mam_snout")
var/new_snout
+9 -6
View File
@@ -318,6 +318,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["feature_mam_tail"] >> features["mam_tail"]
S["feature_mam_ears"] >> features["mam_ears"]
S["feature_mam_tail_animated"] >> features["mam_tail_animated"]
S["feature_taur"] >> features["taur"]
//Xeno features
S["feature_xeno_tail"] >> features["xenotail"]
S["feature_xeno_dors"] >> features["xenodorsal"]
@@ -400,6 +401,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
features["mam_body_markings"] = sanitize_inlist(features["mam_body_markings"], mam_body_markings_list)
features["mam_ears"] = sanitize_inlist(features["mam_ears"], mam_ears_list)
features["mam_tail"] = sanitize_inlist(features["mam_tail"], mam_tails_list)
features["taur"] = sanitize_inlist(features["taur"], taur_list)
//Xeno features
features["xenotail"] = sanitize_inlist(features["xenotail"], xeno_tail_list)
features["xenohead"] = sanitize_inlist(features["xenohead"], xeno_head_list)
@@ -465,6 +467,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["feature_mam_tail"] << features["mam_tail"]
S["feature_mam_ears"] << features["mam_ears"]
S["feature_mam_tail_animated"] << features["mam_tail_animated"]
S["feature_taur"] << features["taur"]
//Xeno features
S["feature_xeno_tail"] << features["xenotail"]
S["feature_xeno_dors"] << features["xenodorsal"]
@@ -507,9 +510,9 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["default_slot"] << slot
S.cd = "/character[slot]"
S["belly_prefs"] >> belly_prefs
S["devourable"] >> devourable
S["digestable"] >> digestable
S["belly_prefs"] >> belly_prefs
S["devourable"] >> devourable
S["digestable"] >> digestable
digestable = sanitize_integer(digestable, 0, 1, initial(digestable))
devourable = sanitize_integer(devourable, 0, 1, initial(devourable))
@@ -525,9 +528,9 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
if(!S) return 0
S.cd = "/character[default_slot]"
S["belly_prefs"] << belly_prefs
S["devourable"] << devourable
S["digestable"] << digestable
S["belly_prefs"] << belly_prefs
S["devourable"] << devourable
S["digestable"] << digestable
return 1
@@ -90,7 +90,7 @@
/datum/emote/living/carbon/human/wag/select_message_type(mob/user)
. = ..()
var/mob/living/carbon/human/H = user
if(("waggingtail_lizard" in H.dna.species.mutant_bodyparts) || ("waggingtail_human" in H.dna.species.mutant_bodyparts) || ("mam_tail" in H.dna.species.mutant_bodyparts))
if(("waggingtail_lizard" in H.dna.species.mutant_bodyparts) || ("waggingtail_human" in H.dna.species.mutant_bodyparts) || ("mam_waggingtail" in H.dna.species.mutant_bodyparts))
. = null
/datum/emote/living/carbon/human/wing
@@ -595,11 +595,11 @@
threatcount += 2
//Check for dresscode violations
if(istype(head, /obj/item/clothing/head/wizard) || istype(head, /obj/item/clothing/head/helmet/space/hardsuit/wizard))
threatcount += 2
if(istype(head, /obj/item/clothing/head/wizard) || istype(head, /obj/item/clothing/head/helmet/space/hardsuit/wizard) || istype(head, /obj/item/clothing/head/helmet/space/hardsuit/syndi) || istype(head, /obj/item/clothing/head/helmet/space/hardsuit/shielded/syndi))
threatcount += 5
//Check for nonhuman scum
if(dna && dna.species.id && dna.species.id != "human")
if(dna && dna.species.id && dna.species.id != "human" || "lizard" || "canine" || "felid" || "avian" || "shark" || "moth")
threatcount += 1
//mindshield implants imply trustworthyness
@@ -608,7 +608,7 @@
//Agent cards lower threatlevel.
if(istype(idcard, /obj/item/weapon/card/id/syndicate))
threatcount -= 5
threatcount -= 2
return threatcount
@@ -303,22 +303,22 @@
var/obj/item/bodypart/head/HD = H.get_bodypart("head")
if("tail_lizard" in mutant_bodyparts)
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None")
bodyparts_to_add -= "tail_lizard"
if("waggingtail_lizard" in mutant_bodyparts)
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None")
bodyparts_to_add -= "waggingtail_lizard"
else if ("tail_lizard" in mutant_bodyparts)
bodyparts_to_add -= "waggingtail_lizard"
if("tail_human" in mutant_bodyparts)
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None")
bodyparts_to_add -= "tail_human"
if("waggingtail_human" in mutant_bodyparts)
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None")
bodyparts_to_add -= "waggingtail_human"
else if ("tail_human" in mutant_bodyparts)
bodyparts_to_add -= "waggingtail_human"
@@ -373,11 +373,11 @@
//Other Races
if("mam_tail" in mutant_bodyparts)
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None")
bodyparts_to_add -= "mam_tail"
if("mam_waggingtail" in mutant_bodyparts)
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))
if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT || !H.dna.features["taur"] == "None"))
bodyparts_to_add -= "mam_waggingtail"
else if ("mam_tail" in mutant_bodyparts)
bodyparts_to_add -= "mam_waggingtail"
@@ -386,6 +386,10 @@
if(!H.dna.features["mam_ears"] || H.dna.features["mam_ears"] == "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 -= "mam_ears"
if("taur" in mutant_bodyparts)
if(!H.dna.features["taur"] || H.dna.features["taur"] == "None" || !H.dna.features["mam_tail"] == "None" || !H.dna.features["mam_waggingtail"] == "None")
bodyparts_to_add -= "taur"
//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
@@ -462,6 +466,8 @@
S = mam_body_markings_list[H.dna.features["mam_body_markings"]]
if("mam_ears")
S = mam_ears_list[H.dna.features["mam_ears"]]
if("taur")
S = taur_list[H.dna.features["taur"]]
//Xeno Bodyparts
if("xenodorsal")
@@ -4,8 +4,8 @@ datum/species/canid
default_color = "4B4B4B"
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR)
// subspecies = list("fox")
mutant_bodyparts = list("mam_tail", "mam_ears", "mam_body_markings", "snout", "legs")
default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "body_markings" = "None", "mam_tail" = "None", "mam_ears" = "None", "mam_body_markings" = "None")
mutant_bodyparts = list("mam_tail", "mam_ears", "mam_body_markings", "snout", "legs", "taur")
default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "body_markings" = "None", "mam_tail" = "None", "mam_ears" = "None", "mam_body_markings" = "None", "taur" = "None")
attack_verb = "claw"
attack_sound = 'sound/weapons/slash.ogg'
miss_sound = 'sound/weapons/slashmiss.ogg'
@@ -22,8 +22,8 @@ datum/species/canid
id = "felid"
default_color = "BCAC9B"
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR)
mutant_bodyparts = list("mam_body_markings", "mam_ears", "mam_tail", "snout", "legs")
default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "mam_body_markings" = "Belly", "mam_ears" = "Big Cat", "mam_tail" = "Big Cat")
mutant_bodyparts = list("mam_body_markings", "mam_ears", "mam_tail", "snout", "legs", "taur")
default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "mam_body_markings" = "Belly", "mam_ears" = "Big Cat", "mam_tail" = "Big Cat", "taur" = "None")
attack_verb = "claw"
attack_sound = 'sound/weapons/slash.ogg'
miss_sound = 'sound/weapons/slashmiss.ogg'
@@ -67,8 +67,8 @@ datum/species/canid
id = "avian"
default_color = "BCAC9B"
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR)
mutant_bodyparts = list("beak", "wings", "avian_tail")
default_features = list("beak" = "None", "wings" = "None")
mutant_bodyparts = list("beak", "wings", "avian_tail", "taur")
default_features = list("beak" = "None", "wings" = "None", "taur" = "None")
attack_verb = "peck"
attack_sound = 'sound/weapons/slash.ogg'
miss_sound = 'sound/weapons/slashmiss.ogg'
@@ -3,8 +3,8 @@
id = "human"
default_color = "FFFFFF"
species_traits = list(MUTCOLORS_PARTSONLY,EYECOLOR,HAIR,FACEHAIR,LIPS)
mutant_bodyparts = list("tail_human", "ears")
default_features = list("tail_human" = "None", "ears" = "None")
mutant_bodyparts = list("tail_human", "ears", "taur")
default_features = list("tail_human" = "None", "ears" = "None", "taur" = "none")
use_skintones = 1
skinned_type = /obj/item/stack/sheet/animalhide/human
@@ -5,9 +5,9 @@
say_mod = "hisses"
default_color = "00FF00"
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,FACEHAIR)
mutant_bodyparts = list("tail_lizard", "snout", "spines", "horns", "frills", "body_markings", "legs")
mutant_bodyparts = list("tail_lizard", "snout", "spines", "horns", "frills", "body_markings", "legs", "taur")
mutant_organs = list(/obj/item/organ/tongue/lizard)
default_features = list("mcolor" = "0F0","mcolor2" = "0F0","mcolor3" = "0F0", "tail" = "Smooth", "snout" = "Round", "horns" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None", "legs" = "Normal Legs")
default_features = list("mcolor" = "0F0","mcolor2" = "0F0","mcolor3" = "0F0", "tail" = "Smooth", "snout" = "Round", "horns" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None", "legs" = "Normal Legs", "taur" = "None")
attack_verb = "slash"
attack_sound = 'sound/weapons/slash.ogg'
miss_sound = 'sound/weapons/slashmiss.ogg'
@@ -59,10 +59,7 @@
var/locked = 0 //Is this part locked from roundstart selection? Used for parts that apply effects
var/dimension_x = 32
var/dimension_y = 32
var/extra = 0
var/center = FALSE //Should we center the sprite?
var/extra_icon = 'icons/mob/mam_bodyparts.dmi'
var/extra_color_src = MUTCOLORS2 //The color source for the extra overlay.
//////////////////////
// Hair Definitions //
@@ -71,7 +68,7 @@
icon = 'icons/mob/human_face.dmi' // default icon for all hairs
/datum/sprite_accessory/hair/short
name = "Short Hair" // try to capatilize the names please~
name = "Short Hair" // try to capatilize the names please~ // try to spell
icon_state = "hair_a" // you do not need to define _s or _l sub-states, game automatically does this for you
/datum/sprite_accessory/hair/shorthair2
@@ -316,7 +313,7 @@
icon_state = "hair_spiky2"
/datum/sprite_accessory/hair/protagonist
name = "Slightly long"
name = "Slightly Long"
icon_state = "hair_protagonist"
/datum/sprite_accessory/hair/kusangi
@@ -1384,6 +1381,7 @@
/datum/sprite_accessory/legs/digitigrade_lizard
name = "Digitigrade Legs"
/* tbi eventually idk
/datum/sprite_accessory/legs/digitigrade_mam
name = "Anthro Digitigrade Legs"
@@ -1792,4 +1790,5 @@
/datum/sprite_accessory/slimecoon_snout
icon = 'icons/mob/exotic_bodyparts.dmi'
name = "Hunter"
icon_state = "slimecoon" */
icon_state = "slimecoon" */
@@ -0,0 +1,499 @@
/datum/sprite_accessory
var/extra = 0
var/extra_icon = 'icons/mob/mam_bodyparts.dmi'
var/extra_color_src = MUTCOLORS2 //The color source for the extra overlay.
/* tbi eventually idk
/datum/sprite_accessory/legs/digitigrade_mam
name = "Anthro Digitigrade Legs"
icon = 'icons/mob/mam_bodyparts.dmi'
*/
/******************************************
************ Human Ears/Tails *************
*******************************************/
/datum/sprite_accessory/ears/fox
name = "Fox"
icon_state = "fox"
hasinner = 0
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/ears/wolf
name = "Wolf"
icon_state = "wolf"
hasinner = 1
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/fox
name = "Fox"
icon_state = "fox"
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/datum/sprite_accessory/tails_animated/human/fox
name = "Fox"
icon_state = "fox"
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/datum/sprite_accessory/tails/human/wolf
name = "Wolf"
icon_state = "wolf"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/human/wolf
name = "Wolf"
icon_state = "wolf"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/catbig
name = "Cat, Big"
icon_state = "catbig"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/human/catbig
name = "Cat, Big"
icon_state = "catbig"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/ears/fennec
name = "Fennec"
icon_state = "fennec"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/fennec
name = "Fennec"
icon_state = "fennec"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/human/fennec
name = "Fennec"
icon_state = "fennec"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/ears/lab
name = "Dog, Floppy"
icon_state = "lab"
hasinner = 0
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/husky
name = "Husky"
icon_state = "husky"
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/datum/sprite_accessory/tails_animated/human/husky
name = "Husky"
icon_state = "husky"
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/datum/sprite_accessory/ears/murid
name = "Murid"
icon_state = "murid"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/murid
name = "Murid"
icon_state = "murid"
color_src = 0
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/human/murid
name = "Murid"
icon_state = "murid"
color_src = 0
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/shark
name = "Shark"
icon_state = "shark"
color_src = 0
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/shark/datashark
name = "datashark"
icon_state = "datashark"
color_src = 0
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/ailurus
name = "ailurus"
icon_state = "ailurus"
color_src = 0
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/ears/squirrel
name = "Squirrel"
icon_state = "squirrel"
hasinner= 1
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails/human/squirrel
name = "Squirrel"
icon_state = "squirrel"
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/tails_animated/human/squirrel
name = "Squirrel"
icon_state = "squirrel"
icon = 'icons/mob/mam_bodyparts.dmi'
/******************************************
*************** Body Parts ****************
*******************************************/
/datum/sprite_accessory/mam_ears
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/mam_ears/none
name = "None"
/datum/sprite_accessory/mam_tails
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/mam_tails/none
name = "None"
/datum/sprite_accessory/mam_tails_animated
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/mam_tails_animated/none
name = "None"
/******************************************
**************** Snouts *******************
*******************************************/
/datum/sprite_accessory/snouts/lcanid
name = "Fox, Long"
icon_state = "lcanid"
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/datum/sprite_accessory/snouts/scanid
name = "Fox, Short"
icon_state = "scanid"
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/datum/sprite_accessory/snouts/wolf
name = "Wolf"
icon_state = "wolf"
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/datum/sprite_accessory/snouts/husky
name = "Husky"
icon_state = "husky"
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/******************************************
************ Actual Species ***************
*******************************************/
//Cat, Big
/datum/sprite_accessory/mam_ears/catbig
name = "Cat, Big"
icon_state = "cat"
hasinner = 1
icon = 'icons/mob/mutant_bodyparts.dmi'
/datum/sprite_accessory/mam_tails/catbig
name = "Cat, Big"
icon_state = "catbig"
/datum/sprite_accessory/mam_tails_animated/catbig
name = "Cat, Big"
icon_state = "catbig"
//Wolf
/datum/sprite_accessory/mam_ears/wolf
name = "Wolf"
icon_state = "wolf"
hasinner = 1
/datum/sprite_accessory/mam_tails/wolf
name = "Wolf"
icon_state = "wolf"
/datum/sprite_accessory/mam_tails_animated/wolf
name = "Wolf"
icon_state = "wolf"
//Fox
/datum/sprite_accessory/mam_ears/fox
name = "Fox"
icon_state = "fox"
hasinner = 0
/datum/sprite_accessory/mam_tails/fox
name = "Fox"
icon_state = "fox"
extra = 1
extra_color_src = MUTCOLORS2
/datum/sprite_accessory/mam_tails_animated/fox
name = "Fox"
icon_state = "fox"
extra = 1
extra_color_src = MUTCOLORS2
//Fennec
/datum/sprite_accessory/mam_ears/fennec
name = "Fennec"
icon_state = "fennec"
hasinner = 1
/datum/sprite_accessory/mam_tails/fennec
name = "Fennec"
icon_state = "fennec"
/datum/sprite_accessory/mam_tails_animated/fennec
name = "Fennec"
icon_state = "fennec"
//Lab
/datum/sprite_accessory/mam_ears/lab
name = "Dog, Long"
icon_state = "lab"
/datum/sprite_accessory/mam_tails/lab
name = "Lab"
icon_state = "lab"
/datum/sprite_accessory/mam_tails_animated/lab
name = "Lab"
icon_state = "lab"
//Husky
/datum/sprite_accessory/mam_ears/husky
name = "Husky"
icon_state = "wolf"
hasinner = 1
icon = 'icons/mob/mam_bodyparts.dmi'
extra = 1
/datum/sprite_accessory/mam_tails/husky
name = "Husky"
icon_state = "husky"
extra = 1
/datum/sprite_accessory/mam_tails_animated/husky
name = "Husky"
icon_state = "husky"
extra = 1
//Murid
/datum/sprite_accessory/mam_ears/murid
name = "Murid"
icon_state = "murid"
/datum/sprite_accessory/mam_tails/murid
name = "Murid"
icon_state = "murid"
color_src = 0
/datum/sprite_accessory/mam_tails_animated/murid
name = "Murid"
icon_state = "murid"
color_src = 0
//Shark
/datum/sprite_accessory/mam_tails/shark
name = "Shark"
icon_state = "shark"
color_src = 0
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/mam_tails/shark/datashark
name = "DataShark"
icon_state = "datashark"
color_src = 0
icon = 'icons/mob/mam_bodyparts.dmi'
//Squirrel
/datum/sprite_accessory/mam_ears/squirrel
name = "Squirrel"
icon_state = "squirrel"
hasinner= 1
/datum/sprite_accessory/mam_tails/squirrel
name = "Squirrel"
icon_state = "squirrel"
/datum/sprite_accessory/mam_tails_animated/squirrel
name = "Squirrel"
icon_state = "squirrel"
// Wah
/datum/sprite_accessory/mam_tails/ailurus
name = "Ailurus"
icon_state = "ailurus"
/datum/sprite_accessory/mam_tails_animated/ailurus
name = "Ailurus"
icon_state = "ailurus"
/******************************************
************ Body Markings ****************
*******************************************/
/datum/sprite_accessory/mam_body_markings
color_src = MUTCOLORS2
icon = 'icons/mob/mam_bodyparts.dmi'
/datum/sprite_accessory/mam_body_markings/none
name = "None"
icon_state = "none"
/datum/sprite_accessory/mam_body_markings/belly
name = "Belly"
icon_state = "belly"
gender_specific = 1
/datum/sprite_accessory/mam_body_markings/bellyhandsfeet
name = "Belly, Hands, & Feet"
icon_state = "bellyhandsfeet"
gender_specific = 1
extra = 1
extra_color_src = MUTCOLORS3
/******************************************
************ Taur Bodies ******************
*******************************************/
/datum/sprite_accessory/taur
icon = 'icons/mob/special/mam_taur.dmi'
extra_icon = 'icons/mob/special/mam_taur.dmi'
extra = 1
extra_color_src = MUTCOLORS2
center = TRUE
dimension_x = 64
/datum/sprite_accessory/taur/none
name = "None"
/datum/sprite_accessory/taur/panther
name = "Panther"
icon_state = "panther"
hasinner = 1
/datum/sprite_accessory/taur/tajaran
name = "Tajaran"
icon_state = "tajaran"
/datum/sprite_accessory/taur/horse
name = "Horse"
icon_state = "horse"
/datum/sprite_accessory/taur/lab
name = "Lab"
icon_state = "lab"
/datum/sprite_accessory/taur/shepard
name = "Shepard"
icon_state = "shepard"
hasinner = 1
/datum/sprite_accessory/taur/husky
name = "Husky"
icon_state = "husky"
/datum/sprite_accessory/taur/cow
name = "Cow"
icon_state = "cow"
/datum/sprite_accessory/taur/fox
name = "Fox"
icon_state = "fox"
/datum/sprite_accessory/taur/wolf
name = "Wolf"
icon_state = "wolf"
/datum/sprite_accessory/taur/naga
name = "Naga"
hasinner = 1
icon_state = "naga"
/datum/sprite_accessory/taur/otie
name = "Otie"
hasinner = 1
icon_state = "otie"
/datum/sprite_accessory/taur/drake
name = "Drake"
icon_state = "drake"
/datum/sprite_accessory/taur/drider
name = "Drider"
icon_state = "drider"
/******************************************
*************** Ayyliums ******************
*******************************************/
//Xeno Dorsal Tubes
/datum/sprite_accessory/xeno_dorsal
icon = 'icons/mob/exotic_bodyparts.dmi'
color_src = 0
/datum/sprite_accessory/xeno_dorsal/none
name = "None"
/datum/sprite_accessory/xeno_dorsal/normal
name = "Dorsal Tubes"
icon_state = "dortubes"
//Xeno Tail
/datum/sprite_accessory/xeno_tail
icon = 'icons/mob/exotic_bodyparts.dmi'
color_src = 0
/datum/sprite_accessory/xeno_tail/none
name = "None"
/datum/sprite_accessory/xeno_tail/normal
name = "Xenomorph Tail"
icon_state = "xeno"
//Xeno Caste Heads
//unused as of October 3, 2016
/datum/sprite_accessory/xeno_head
icon = 'icons/mob/exotic_bodyparts.dmi'
color_src = 0
/datum/sprite_accessory/xeno_head/none
name = "None"
/datum/sprite_accessory/xeno_head/hunter
name = "Hunter"
icon_state = "hunter"
/datum/sprite_accessory/xeno_head/drone
name = "Drone"
icon_state = "drone"
/datum/sprite_accessory/xeno_head/sentinel
name = "Sentinel"
icon_state = "sentinel"
/*
//Slimecoon Parts
/datum/sprite_accessory/slimecoon_ears
icon = 'icons/mob/exotic_bodyparts.dmi'
name = "Slimecoon Ears"
icon_state = "slimecoon"
/datum/sprite_accessory/slimecoon_tail
icon = 'icons/mob/exotic_bodyparts.dmi'
name = "Slimecoon Tail"
icon_state = "slimecoon"
/datum/sprite_accessory/slimecoon_snout
icon = 'icons/mob/exotic_bodyparts.dmi'
name = "Hunter"
icon_state = "slimecoon" */