diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index 4f139d26e5aa..dd8b341bee6d 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -100,6 +100,7 @@ GLOBAL_LIST_INIT(turfs_openspace, typecacheof(list( #define isipc(A) (is_species(A, /datum/species/ipc)) #define isgoblin(A) (is_species(A, /datum/species/goblin)) //Monkestation Addition #define isfloran(A) (is_species(A, /datum/species/floran)) //Monkestation Addition +#define isarachnid(A) (is_species(A, /datum/species/arachnid)) //Monkestation Addition //More carbon mobs diff --git a/code/datums/emotes.dm b/code/datums/emotes.dm index 89596951b2c2..8dc6919c7a16 100644 --- a/code/datums/emotes.dm +++ b/code/datums/emotes.dm @@ -204,7 +204,7 @@ . = message_monkey // Monkestation Edit start - else if((ismoth(user) || isflyperson(user) || istype(user, /mob/living/basic/mothroach)) && message_insect) + else if((ismoth(user) || isflyperson(user) || isarachnid(user) || istype(user, /mob/living/basic/mothroach)) && message_insect) . = message_insect else if(isipc(user) && message_ipc) . = message_ipc diff --git a/monkestation/code/modules/mob/living/carbon/human/species_type/arachnid.dm b/monkestation/code/modules/mob/living/carbon/human/species_type/arachnid.dm index d6860598873e..4bd428ad34ec 100644 --- a/monkestation/code/modules/mob/living/carbon/human/species_type/arachnid.dm +++ b/monkestation/code/modules/mob/living/carbon/human/species_type/arachnid.dm @@ -14,15 +14,13 @@ /obj/item/organ/external/arachnid_appendages = "long", /obj/item/organ/external/chelicerae = "basic") meat = /obj/item/food/meat/slab/spider - disliked_food = VEGETABLES - liked_food = GORE | MEAT | SEAFOOD | BUGS | GROSS + disliked_food = NONE // Okay listen, i don't actually know what irl spiders don't like to eat and i'm pretty tired of looking for answers. + liked_food = GORE | MEAT | BUGS | GROSS species_language_holder = /datum/language_holder/fly mutanttongue = /obj/item/organ/internal/tongue/arachnid mutanteyes = /obj/item/organ/internal/eyes/night_vision/arachnid - burnmod = 1.2 - heatmod = 1.2 - brutemod = 0.8 speedmod = -0.1 + inherent_factions = list(FACTION_SPIDER) bodypart_overrides = list( BODY_ZONE_HEAD = /obj/item/bodypart/head/arachnid, BODY_ZONE_CHEST = /obj/item/bodypart/chest/arachnid, @@ -60,7 +58,7 @@ return 'monkestation/sound/voice/laugh/arachnid/arachnid_laugh.ogg' /datum/species/arachnid/get_species_description() - return "Arachnids are a species of humanoid spiders recently employed by Nanotrasen." + return "Arachnids are a species of humanoid spiders employed by Nanotrasen in recent years." // Allan please add details /datum/species/arachnid/create_pref_unique_perks() var/list/to_add = list() @@ -70,7 +68,7 @@ SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK, SPECIES_PERK_ICON = "bolt", SPECIES_PERK_NAME = "Agile", - SPECIES_PERK_DESC = "Arachnids run slightly faster than other species.", + SPECIES_PERK_DESC = "Arachnids run slightly faster than other species, but are still outpaced by Goblins.", ), list( SPECIES_PERK_TYPE = SPECIES_NEUTRAL_PERK, @@ -80,10 +78,10 @@ or MODsuits. This can make concealing your identity harder.", ), list( - SPECIES_PERK_TYPE = SPECIES_NEUTRAL_PERK, + SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK, SPECIES_PERK_ICON = "sun", SPECIES_PERK_NAME = "Maybe Too Many Eyes", - SPECIES_PERK_DESC = "Arachnids cannot equip any kind of glasses, requiring \ + SPECIES_PERK_DESC = "Arachnids cannot equip any kind of eyewear, requiring \ alternatives like welding helmets or implants. Their eyes have night vision however.", ), ) diff --git a/monkestation/code/modules/mob/living/emote.dm b/monkestation/code/modules/mob/living/emote.dm index 38bb8760ffdd..d86c0ee991af 100644 --- a/monkestation/code/modules/mob/living/emote.dm +++ b/monkestation/code/modules/mob/living/emote.dm @@ -6,7 +6,7 @@ message_insect = "clicks their mandibles." /datum/emote/living/click/get_sound(mob/living/user) - if(ismoth(user) || isflyperson(user) || istype(user, /mob/living/basic/mothroach)) + if(ismoth(user) || isflyperson(user) || isarachnid(user) || istype(user, /mob/living/basic/mothroach)) return 'monkestation/sound/creatures/rattle.ogg' else if(isipc(user)) return 'sound/machines/click.ogg' diff --git a/monkestation/code/modules/surgery/organs/external/appendages/appendages.dm b/monkestation/code/modules/surgery/organs/external/appendages/appendages.dm index ed576c6dadd7..1a33ddb33101 100644 --- a/monkestation/code/modules/surgery/organs/external/appendages/appendages.dm +++ b/monkestation/code/modules/surgery/organs/external/appendages/appendages.dm @@ -1,7 +1,6 @@ /obj/item/organ/external/arachnid_appendages name = "arachnid appendages" desc = "Extra legs that go on your back, don't actually work for walking sadly." - icon_state = "antennae" preference = "feature_arachnid_appendages" zone = BODY_ZONE_CHEST diff --git a/monkestation/code/modules/surgery/organs/internal/eyes.dm b/monkestation/code/modules/surgery/organs/internal/eyes.dm index b9f478525ec3..e43b251973a0 100644 --- a/monkestation/code/modules/surgery/organs/internal/eyes.dm +++ b/monkestation/code/modules/surgery/organs/internal/eyes.dm @@ -16,6 +16,26 @@ medium_light_cutoff = list(35, 30, 0) high_light_cutoff = list(50, 40, 0) +/obj/item/organ/internal/eyes/night_vision/arachnid/on_insert(mob/living/carbon/tongue_owner) + . = ..() + if(!ishuman(tongue_owner)) + return + var/mob/living/carbon/human/human_receiver = tongue_owner + if(!human_receiver.can_mutate()) + return + var/datum/species/rec_species = human_receiver.dna.species + rec_species.update_no_equip_flags(tongue_owner, rec_species.no_equip_flags | ITEM_SLOT_EYES) + +/obj/item/organ/internal/eyes/night_vision/arachnid/on_remove(mob/living/carbon/tongue_owner) + . = ..() + if(!ishuman(tongue_owner)) + return + var/mob/living/carbon/human/human_receiver = tongue_owner + if(!human_receiver.can_mutate()) + return + var/datum/species/rec_species = human_receiver.dna.species + rec_species.update_no_equip_flags(tongue_owner, initial(rec_species.no_equip_flags)) + /obj/item/organ/internal/eyes/floran name = "phytoid eyes" desc = "They look like big berries..." diff --git a/monkestation/icons/mob/species/arachnid/arachnid_chelicerae.dmi b/monkestation/icons/mob/species/arachnid/arachnid_chelicerae.dmi index 2a9e71a1af2f..8cb9f6faca15 100644 Binary files a/monkestation/icons/mob/species/arachnid/arachnid_chelicerae.dmi and b/monkestation/icons/mob/species/arachnid/arachnid_chelicerae.dmi differ diff --git a/monkestation/icons/mob/species/arachnid/bodyparts.dmi b/monkestation/icons/mob/species/arachnid/bodyparts.dmi index b8f896694b96..6c9d2616622c 100644 Binary files a/monkestation/icons/mob/species/arachnid/bodyparts.dmi and b/monkestation/icons/mob/species/arachnid/bodyparts.dmi differ