diff --git a/GainStation13/code/modules/mob/living/carbon/human/species_types/mootant.dm b/GainStation13/code/modules/mob/living/carbon/human/species_types/mootant.dm new file mode 100644 index 0000000000..c023053082 --- /dev/null +++ b/GainStation13/code/modules/mob/living/carbon/human/species_types/mootant.dm @@ -0,0 +1,80 @@ +/mob/living/carbon/human/species/mootant + race = /datum/species/mootant + +/datum/species/mootant + name = "Mootant" + id = SPECIES_MOOTANT + default_color = "FFFFFF" + species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,HORNCOLOR,WINGCOLOR,HAS_FLESH,HAS_BONE) + inherent_traits = list(TRAIT_CHUNKYFINGERS, TRAIT_VORACIOUS, TRAIT_LIPOLICIDE_TOLERANCE, TRAIT_PACIFISM) //chunky fingers because hooves! + inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID|MOB_BEAST + mutant_bodyparts = list("mcolor" = "FFFFFF","mcolor2" = "FFFFFF","mcolor3" = "FFFFFF", "mam_snouts" = "mootant_secondary", "mam_tail" = "Husky", "mam_ears" = "mootant_secondary", "deco_wings" = "None", + "mam_body_markings" = list(), "taur" = "None", "horns" = "None", "legs" = "Plantigrade", "meat_type" = "Mammalian") + attack_verb = "claw" + attack_sound = 'sound/weapons/slash.ogg' + miss_sound = 'sound/weapons/slashmiss.ogg' + meat = /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/mammal + mutant_organs = list(/obj/item/organ/genital/breasts/mootant) //moo + liked_food = FRIED | DAIRY + disliked_food = TOXIC | MEAT + + tail_type = "mam_tail" + wagging_type = "mam_waggingtail" + species_category = SPECIES_CATEGORY_FURRY + + allowed_limb_ids = list("mammal","aquatic","avian") + +/obj/item/organ/genital/breasts/mootant //special type of breasts that produces more + name = "mootant breasts" + desc = "Breasts of a mootant, typically characterized by greater size and productivity." + fluid_id = /datum/reagent/consumable/milk + fluid_rate = MILK_RATE_MOOTANT + fluid_mult = 2 + fluid_max_volume = 1000 + producing = TRUE + size = BREASTS_SIZE_MOOTANT + + +//i'll throw these elsewhere xd + +/datum/sprite_accessory/snouts/mam_snouts/mootant + name = "Mootant" + icon = 'GainStation13/icons/mob/markings/mam_snouts.dmi' + icon_state = "mootantone" + color_src = MATRIXED + matrixed_sections = MATRIX_RED + +/datum/sprite_accessory/snouts/mam_snouts/mootant_secondary + name = "Mootant (Secondary)" + icon = 'GainStation13/icons/mob/markings/mam_snouts.dmi' + icon_state = "mootanttwo" + color_src = MATRIXED + matrixed_sections = MATRIX_RED_BLUE + +/datum/sprite_accessory/ears/mam_ears/mootant + name = "Mootant" + icon_state = "mootantone" + icon = 'GainStation13/icons/mob/markings/mam_ears.dmi' + color_src = MATRIXED + matrixed_sections = MATRIX_RED + +/datum/sprite_accessory/ears/mam_ears/mootant_secondary + name = "Mootant (Secondary)" + icon_state = "mootanttwo" + icon = 'GainStation13/icons/mob/markings/mam_ears.dmi' + color_src = MATRIXED + matrixed_sections = MATRIX_RED_BLUE + +/datum/sprite_accessory/ears/human/mootant + name = "Mootant" + icon_state = "mootantone" + icon = 'GainStation13/icons/mob/markings/mam_ears.dmi' + color_src = MATRIXED + matrixed_sections = MATRIX_RED + +/datum/sprite_accessory/ears/human/mootant_secondary + name = "Mootant (Secondary)" + icon_state = "mootanttwo" + icon = 'GainStation13/icons/mob/markings/mam_ears.dmi' + color_src = MATRIXED + matrixed_sections = MATRIX_RED_BLUE diff --git a/GainStation13/icons/mob/markings/mam_ears.dmi b/GainStation13/icons/mob/markings/mam_ears.dmi index ceffc09310..7a3eabade3 100644 Binary files a/GainStation13/icons/mob/markings/mam_ears.dmi and b/GainStation13/icons/mob/markings/mam_ears.dmi differ diff --git a/GainStation13/icons/mob/markings/mam_snouts.dmi b/GainStation13/icons/mob/markings/mam_snouts.dmi index bfa9898ebf..588986700b 100644 Binary files a/GainStation13/icons/mob/markings/mam_snouts.dmi and b/GainStation13/icons/mob/markings/mam_snouts.dmi differ diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index a5b36e862e..82cecb5536 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -149,3 +149,10 @@ #define FARTING_NOISES (1<<17) //GS13 #define BURPING_NOISES (1<<18) //GS13 + +//GS13 - special values for mootants +#define BREASTS_SIZE_MOOTANT "e" +#define BREASTS_VOLUME_BASE_MOOTANT 200 +#define MILK_RATE_MOOTANT 20 +#define MILK_RATE_MULT_MOOTANT 3 +#define MILK_EFFICIENCY_MOOTANT 3 diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index fb8ebd3d08..eec20f9815 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -87,6 +87,8 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list( #define iscatperson(A) (ishumanbasic(A) && istype(A.dna.species, /datum/species/human/felinid)) #define isethereal(A) (is_species(A, /datum/species/ethereal)) #define isvampire(A) (is_species(A,/datum/species/vampire)) +//gs13 species +#define ismootant(A) (is_species(A,/datum/species/mootant)) #define ismush(A) (is_species(A, /datum/species/mush)) #define isshadow(A) (is_species(A, /datum/species/shadow)) diff --git a/code/__DEFINES/species.dm b/code/__DEFINES/species.dm index 60aeb57513..193bde51da 100644 --- a/code/__DEFINES/species.dm +++ b/code/__DEFINES/species.dm @@ -37,6 +37,8 @@ #define SPECIES_VAMPIRE_WEAK "vampire_roundstart" #define SPECIES_XENOHYBRID "xeno" #define SPECIES_ZOMBIE "zombie" +//GS13 +#define SPECIES_MOOTANT "mootant" // Species Category Defines --------------------- diff --git a/tgstation.dme b/tgstation.dme index f32f08224b..290cdfe2fb 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -4076,9 +4076,11 @@ #include "GainStation13\code\modules\research\designs\autolathe.dm" #include "GainStation13\code\modules\research\designs\biogen.dm" #include "GainStation13\code\modules\research\designs\borg.dm" +#include "GainStation13\code\modules\research\designs\ipc_designs.dm" #include "GainStation13\code\modules\research\designs\nutri_designs.dm" #include "GainStation13\code\modules\research\nanites\nanite_programs\fattening.dm" #include "GainStation13\code\modules\research\techweb\nutritech_nodes.dm" +#include "GainStation13\code\modules\research\techweb\robotic_nodes.dm" #include "GainStation13\code\modules\resize\height_limits.dm" #include "GainStation13\code\modules\surgery\organs\augments.dm" #include "GainStation13\code\modules\surgery\organs\tongue.dm" @@ -4128,8 +4130,6 @@ #include "GainStation13\icons\obj\vairous_weapons.dm" #include "GainStation13\icons\obj\structure\beds.dm" #include "GainStation13\icons\obj\structure\flora.dm" -#include "GainStation13\code\modules\research\techweb\robotic_nodes.dm" -#include "GainStation13\code\modules\research\designs\ipc_designs.dm" #include "hyperstation\code\datums\mood_events\events.dm" #include "hyperstation\code\game\objects\railings.dm" #include "hyperstation\code\game\objects\structures\bench.dm"