diff --git a/config/game_options.txt b/config/game_options.txt index c2c828097ff..31e05047656 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -471,6 +471,8 @@ ROUNDSTART_RACES dwarf ROUNDSTART_RACES ipc ROUNDSTART_RACES synthliz ROUNDSTART_RACES vox +ROUNDSTART_RACES aquatic +ROUNDSTART_RACES insect ##------------------------------------------------------------------------------------------- diff --git a/modular_skyrat/modules/customization/icons/mob/species/insect_parts_greyscale.dmi b/modular_skyrat/modules/customization/icons/mob/species/insect_parts_greyscale.dmi new file mode 100644 index 00000000000..617f6ee011f Binary files /dev/null and b/modular_skyrat/modules/customization/icons/mob/species/insect_parts_greyscale.dmi differ diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/body_markings/body_marking_sets.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/body_markings/body_marking_sets.dm index 765af7a122c..85aab91a25d 100644 --- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/body_markings/body_marking_sets.dm +++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/body_markings/body_marking_sets.dm @@ -4,7 +4,7 @@ ///List of the body markings in this set var/body_marking_list ///Which species is this marking recommended to. Important for randomisations. - var/recommended_species = list("mammal", "tajaran", "vulpkanin", "akula") + var/recommended_species = list("mammal", "tajaran", "vulpkanin", "aquatic", "akula") /datum/body_marking_set/none name = "None" diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/ears.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/ears.dm index b6dec43efb7..2b088084221 100644 --- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/ears.dm +++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/ears.dm @@ -32,7 +32,7 @@ recommended_species = list("mammal", "human", "felinid", "tajaran", "humanoid") /datum/sprite_accessory/ears/mutant/akula - recommended_species = list("mammal", "human", "felinid", "akula", "humanoid") + recommended_species = list("mammal", "human", "felinid", "aquatic", "akula", "humanoid") /datum/sprite_accessory/ears/mutant/axolotl name = "Axolotl" diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/snout.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/snout.dm index c00bb22876c..8e635c11150 100644 --- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/snout.dm +++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/snout.dm @@ -29,7 +29,7 @@ recommended_species = list("mammal", "tajaran", "humanoid") /datum/sprite_accessory/snouts/mammal/akula - recommended_species = list("mammal", "akula", "humanoid") + recommended_species = list("mammal", "akula", "aquatic", "humanoid") /datum/sprite_accessory/snouts/mammal/bird name = "Beak" diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/tails.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/tails.dm index 57f0ea10d2a..c9180cc2f6b 100644 --- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/tails.dm +++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/tails.dm @@ -49,7 +49,7 @@ recommended_species = list("mammal", "human", "tajaran", "humanoid") /datum/sprite_accessory/tails/mammal/wagging/akula - recommended_species = list("mammal", "human", "akula", "humanoid") + recommended_species = list("mammal", "human", "akula", "aquatic", "humanoid") /datum/sprite_accessory/tails/mammal/wagging/axolotl name = "Axolotl" diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/wings.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/wings.dm index 359cc3bd1d5..491f289f30e 100644 --- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/wings.dm +++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/wings.dm @@ -27,7 +27,7 @@ /datum/sprite_accessory/wings/moth icon = 'modular_skyrat/modules/customization/icons/mob/sprite_accessory/moth_wings.dmi' //Needs new icon to suit new naming convention default_color = "FFF" - recommended_species = list("moth", "mammal") //Mammals too, I guess. They wont get flight though, see the wing organs for that logic + recommended_species = list("moth", "mammal", "insect") //Mammals too, I guess. They wont get flight though, see the wing organs for that logic organ_type = /obj/item/organ/wings/moth /datum/sprite_accessory/wings/moth/plain diff --git a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/aquatic.dm b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/aquatic.dm new file mode 100644 index 00000000000..edbb9ede334 --- /dev/null +++ b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/aquatic.dm @@ -0,0 +1,51 @@ +/datum/species/aquatic + name = "Aquatic" + id = "aquatic" + default_color = "4B4B4B" + species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAS_FLESH,HAS_BONE,HAIR, FACEHAIR) + inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID + default_features = null + mutant_bodyparts = list() + default_mutant_bodyparts = list("tail" = ACC_RANDOM, "snout" = ACC_RANDOM, "horns" = "None", "ears" = ACC_RANDOM, "legs" = "Normal Legs", "wings" = "None") + attack_verb = "slash" + attack_sound = 'sound/weapons/slash.ogg' + miss_sound = 'sound/weapons/slashmiss.ogg' + liked_food = GROSS | MEAT | FRIED + changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_MAGIC | MIRROR_PRIDE | ERT_SPAWN | RACE_SWAP | SLIME_EXTRACT + limbs_icon = 'modular_skyrat/modules/customization/icons/mob/species/akula_parts_greyscale.dmi' + limbs_id = "akula" + +/datum/species/aquatic/get_random_features() + var/list/returned = MANDATORY_FEATURE_LIST + var/main_color + var/second_color + var/random = rand(1,5) + //Choose from a variety of sharkish colors, with a whiter secondary and tertiary + switch(random) + if(1) + main_color = "689" + second_color = "BCD" + if(2) + main_color = "345" + second_color = "DDE" + if(3) + main_color = "456" + second_color = "DDE" + if(4) + main_color = "665" + second_color = "DDE" + if(5) + main_color = "444" + second_color = "DDE" + returned["mcolor"] = main_color + returned["mcolor2"] = second_color + returned["mcolor3"] = second_color + return returned + +/datum/species/aquatic/get_random_body_markings(list/passed_features) + var/name = "Shark" + var/datum/body_marking_set/BMS = GLOB.body_marking_sets[name] + var/list/markings = list() + if(BMS) + markings = assemble_body_markings_from_set(BMS, passed_features, src) + return markings diff --git a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/insect.dm b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/insect.dm new file mode 100644 index 00000000000..906264ba40c --- /dev/null +++ b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/insect.dm @@ -0,0 +1,11 @@ +/datum/species/insect + name = "Anthromorphic Insect" + id = "insect" + default_color = "4B4B4B" + species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAS_FLESH,HAS_BONE,HAIR,FACEHAIR) + inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID|MOB_BUG + default_features = null + mutant_bodyparts = list() + default_mutant_bodyparts = list("tail" = "None", "snout" = "None", "horns" = "None", "ears" = "None", "legs" = "Normal Legs", "taur" = "None", "wings" = "Bee", "moth_antennae" = ACC_RANDOM) + changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_MAGIC | MIRROR_PRIDE | ERT_SPAWN | RACE_SWAP | SLIME_EXTRACT + limbs_icon = 'modular_skyrat/modules/customization/icons/mob/species/insect_parts_greyscale.dmi' diff --git a/tgstation.dme b/tgstation.dme index 3a15f68114e..4c381ed7148 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3390,8 +3390,10 @@ #include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species.dm" #include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\status_procs.dm" #include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species\akula.dm" +#include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species\aquatic.dm" #include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species\dwarf.dm" #include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species\humanoid.dm" +#include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species\insect.dm" #include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species\lizard.dm" #include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species\mammal.dm" #include "modular_skyrat\modules\customization\modules\mob\living\carbon\human\species\moth.dm"