diff --git a/code/modules/mob/living/carbon/human/species/outsider/vox.dm b/code/modules/mob/living/carbon/human/species/outsider/vox.dm
index 9c7685d3d3..fa7dda8f57 100644
--- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm
+++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm
@@ -26,6 +26,7 @@
cold_level_3 = 0
eyes = "vox_eyes_s"
+ gluttonous = 2
breath_type = "nitrogen"
poison_type = "oxygen"
diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm
index 982a3dfe8a..cc53182440 100644
--- a/code/modules/mob/living/carbon/human/species/species.dm
+++ b/code/modules/mob/living/carbon/human/species/species.dm
@@ -108,7 +108,7 @@
var/slowdown = 0 // Passive movement speed malus (or boost, if negative)
var/primitive_form // Lesser form, if any (ie. monkey for humans)
var/greater_form // Greater form, if any, ie. human for monkeys.
- var/gluttonous // Can eat some mobs. 1 for monkeys, 2 for people.
+ var/gluttonous // Can eat some mobs. 1 for mice, 2 for monkeys, 3 for people.
var/rarity_value = 1 // Relative rarity/collector value for this species.
// Determines the organs that the species spawns with and
var/list/has_organ = list( // which required-organ checks are conducted.
@@ -155,6 +155,11 @@
for(var/u_type in unarmed_types)
unarmed_attacks += new u_type()
+ if(gluttonous)
+ if(!inherent_verbs)
+ inherent_verbs = list()
+ inherent_verbs |= /mob/living/carbon/human/proc/regurgitate
+
/datum/species/proc/get_station_variant()
return name
diff --git a/code/modules/mob/living/carbon/human/species/species_attack.dm b/code/modules/mob/living/carbon/human/species/species_attack.dm
index 466b1bd2ab..afdb202f6a 100644
--- a/code/modules/mob/living/carbon/human/species/species_attack.dm
+++ b/code/modules/mob/living/carbon/human/species/species_attack.dm
@@ -2,7 +2,6 @@
attack_verb = list("bit", "chomped on")
attack_sound = 'sound/weapons/bite.ogg'
shredding = 0
- damage = 5
sharp = 1
edge = 1
@@ -11,7 +10,6 @@
attack_noun = list("tendril")
eye_attack_text = "a tendril"
eye_attack_text_victim = "a tendril"
- damage = 5
/datum/unarmed_attack/claws
attack_verb = list("scratched", "clawed", "slashed")
@@ -20,7 +18,6 @@
eye_attack_text_victim = "sharp claws"
attack_sound = 'sound/weapons/slice.ogg'
miss_sound = 'sound/weapons/slashmiss.ogg'
- damage = 5
sharp = 1
edge = 1
@@ -57,18 +54,18 @@
/datum/unarmed_attack/claws/strong
attack_verb = list("slashed")
- damage = 10
+ damage = 5
shredding = 1
/datum/unarmed_attack/bite/strong
attack_verb = list("mauled")
- damage = 15
+ damage = 8
shredding = 1
/datum/unarmed_attack/slime_glomp
attack_verb = list("glomped")
attack_noun = list("body")
- damage = 0
+ damage = 2
/datum/unarmed_attack/slime_glomp/apply_effects()
//Todo, maybe have a chance of causing an electrical shock?
diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm
index b0d68f7118..abf187db1e 100644
--- a/code/modules/mob/living/carbon/human/species/station/station.dm
+++ b/code/modules/mob/living/carbon/human/species/station/station.dm
@@ -25,6 +25,8 @@
primitive_form = "Stok"
darksight = 3
gluttonous = 1
+ slowdown = 0.5
+ brute_mod = 0.8
num_alternate_languages = 2
secondary_langs = list("Sinta'unathi")
@@ -42,7 +44,7 @@
heat_level_2 = 480 //Default 400
heat_level_3 = 1100 //Default 1000
- spawn_flags = CAN_JOIN | IS_WHITELISTED
+ spawn_flags = CAN_JOIN | IS_WHITELISTED
appearance_flags = HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR
flesh_color = "#34AF10"
@@ -77,8 +79,10 @@
tail_animation = 'icons/mob/species/tajaran/tail.dmi'
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp)
darksight = 8
- slowdown = -1
- brute_mod = 1.2
+ slowdown = -0.5
+ brute_mod = 1.15
+ burn_mod = 1.15
+ gluttonous = 1
num_alternate_languages = 2
secondary_langs = list("Siik'tajr")
@@ -90,7 +94,7 @@
cold_level_1 = 200 //Default 260
cold_level_2 = 140 //Default 200
- cold_level_3 = 80 //Default 120
+ cold_level_3 = 80 //Default 120
heat_level_1 = 330 //Default 360
heat_level_2 = 380 //Default 400
diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm
index 02c7abe0cd..1c5e88ce59 100644
--- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm
+++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm
@@ -11,7 +11,7 @@
has_fine_manipulation = 0
siemens_coefficient = 0
- gluttonous = 2
+ gluttonous = 3
eyes = "blank_eyes"
diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm
index 8960d5128e..ed8e122b62 100644
--- a/code/modules/mob/mob_grab.dm
+++ b/code/modules/mob/mob_grab.dm
@@ -355,7 +355,7 @@
var/datum/unarmed_attack/attack = H.get_unarmed_attack(src, hit_zone)
if(!attack)
return
-
+
if(state < GRAB_NECK)
assailant << "You require a better grab to do this."
return
@@ -370,7 +370,7 @@
assailant.attack_log += text("\[[time_stamp()]\] Attacked [affecting.name]'s eyes using grab ([affecting.ckey])")
affecting.attack_log += text("\[[time_stamp()]\] Had eyes attacked by [assailant.name]'s grab ([assailant.ckey])")
msg_admin_attack("[key_name(assailant)] attacked [key_name(affecting)]'s eyes using a grab action.")
-
+
attack.handle_eye_attack(assailant, affecting)
else if(hit_zone != "head")
if(state < GRAB_NECK)
@@ -428,10 +428,24 @@
else
var/mob/living/carbon/human/H = user
if(istype(H) && H.species.gluttonous)
- if(H.species.gluttonous == 2)
+ // Small animals (mice, lizards).
+ if(affecting.small)
can_eat = 2
- else if(!ishuman(affecting) && !issmall(affecting) && (affecting.small || iscarbon(affecting)))
- can_eat = 1
+ else
+ if(H.species.gluttonous == 2)
+ // Diona nymphs, alien larvae.
+ if(iscarbon(affecting) && !ishuman(affecting))
+ can_eat = 2
+ // Monkeys.
+ else if(issmall(affecting))
+ can_eat = 1
+ else if(H.species.gluttonous == 3)
+ // Full-sized humans.
+ if(ishuman(affecting) && !issmall(affecting))
+ can_eat = 1
+ // Literally everything else.
+ else
+ can_eat = 2
if(can_eat)
var/mob/living/carbon/attacker = user
diff --git a/html/changelogs/zuhayr-species.yml b/html/changelogs/zuhayr-species.yml
new file mode 100644
index 0000000000..5f80eb2cc7
--- /dev/null
+++ b/html/changelogs/zuhayr-species.yml
@@ -0,0 +1,8 @@
+author: Zuhayr
+delete-after: True
+changes:
+ - rscadd: "Unathi now have minor slowdown and 20% brute resist."
+ - rscadd: "Tajarans now have lower bonus speed and a flat 15% malus to brute and burn."
+ - rscadd: "Vox can now eat monkeys and small animals."
+ - rscadd: "Tajarans can now eat small animals."
+ - rscadd: "Unarmed attack damage has been lowered across the board."