diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm
index 27e000d0ba..1e94d47cd5 100644
--- a/code/_helpers/global_lists_vr.dm
+++ b/code/_helpers/global_lists_vr.dm
@@ -781,6 +781,7 @@ var/global/list/xenobio_gold_mobs_safe = list(
/mob/living/simple_mob/vore/bee,
/mob/living/simple_mob/vore/fennec,
/mob/living/simple_mob/vore/fennix,
+ /mob/living/simple_mob/vore/seagull,
/mob/living/simple_mob/vore/hippo,
/mob/living/simple_mob/vore/horse,
/mob/living/simple_mob/vore/jelly,
diff --git a/code/modules/mob/living/simple_mob/simple_mob_vr.dm b/code/modules/mob/living/simple_mob/simple_mob_vr.dm
index 993f782e55..39bb6860b5 100644
--- a/code/modules/mob/living/simple_mob/simple_mob_vr.dm
+++ b/code/modules/mob/living/simple_mob/simple_mob_vr.dm
@@ -12,7 +12,7 @@
var/vore_active = 0 // If vore behavior is enabled for this mob
- //CHOMPEdit - Vore_capacity is now defined on living
+ //CHOMPEdit - Vore_capacity is now defined on code/modules/vore/eating/living_ch.dm
vore_capacity = 1 // The capacity (in people) this person can hold
var/vore_max_size = RESIZE_HUGE // The max size this mob will consider eating
var/vore_min_size = RESIZE_TINY // The min size this mob will consider eating
@@ -41,11 +41,13 @@
var/vore_default_contamination_flavor = "Generic" //Contamination descriptors
var/vore_default_contamination_color = "green" //Contamination color
- //CHOMPEDIT start - Moved to living
+ //CHOMPEDIT start - Moved to code/modules/vore/eating/living_ch
//var/vore_fullness = 0 // How "full" the belly is (controls icons)
//var/vore_icons = 0 // Bitfield for which fields we have vore icons for.
//var/vore_eyes = FALSE // For mobs with fullness specific eye overlays.
+ //var/belly_size_multiplier = 1
//CHOMPEDIT end.
+
var/life_disabled = 0 // For performance reasons
var/vore_attack_override = FALSE // Enable on mobs you want to have special behaviour on melee grab attack.
@@ -75,13 +77,14 @@
return myid
// Update fullness based on size & quantity of belly contents
-/* CHOMPEdit - moved to living
+/* CHOMPEdit - moved to code/modules/vore/eating/living_ch
/mob/living/simple_mob/proc/update_fullness()
var/new_fullness = 0
for(var/obj/belly/B as anything in vore_organs)
for(var/mob/living/M in B)
new_fullness += M.size_multiplier
new_fullness = new_fullness / size_multiplier //Divided by pred's size so a macro mob won't get macro belly from a regular prey.
+ new_fullness = new_fullness * belly_size_multiplier // Some mobs are small even at 100% size. Let's account for that.
new_fullness = round(new_fullness, 1) // Because intervals of 0.25 are going to make sprite artists cry.
vore_fullness = min(vore_capacity, new_fullness)
*/
diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm
index 7a7ab447d1..8b553c33fe 100644
--- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm
@@ -80,8 +80,9 @@
. = ..()
if(!.)
return
- if(vore_fullness == 0 && movement_cooldown == 50)
+ if(vore_fullness == 0 && movement_cooldown == 10)
movement_cooldown = initial(movement_cooldown)
+
/mob/living/simple_mob/vore/alienanimals/dustjumper/perform_the_nom(mob/living/user, mob/living/prey, mob/living/pred, obj/belly/belly, delay)
. = ..()
movement_cooldown = 10
diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm b/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm
new file mode 100644
index 0000000000..84b6f87efd
--- /dev/null
+++ b/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm
@@ -0,0 +1,60 @@
+/datum/category_item/catalogue/fauna/seagull // TODO: write actual lore if ever needed
+ name = "Wildlife - Seagull"
+ desc = "Classification: Larus brachyrhynchus\
+
\
+ Gulls, or colloquially seagulls, are seabirds of the family Laridae in the suborder Lari. \
+ They are most closely related to the terns and skimmers and only distantly related to auks, and even more distantly to waders."
+ value = CATALOGUER_REWARD_TRIVIAL
+
+/mob/living/simple_mob/vore/seagull
+ name = "seagull"
+ desc = "The most dangerous and hostile scavenger of seashores. Beware!"
+ tt_desc = "Larus brachyrhynchus"
+ catalogue_data = list(/datum/category_item/catalogue/fauna/seagull)
+
+ icon_state = "seagull"
+ icon_living = "seagull"
+ icon_dead = "seagull_dead"
+ icon_rest = "seagull"
+ icon = 'icons/mob/vore.dmi'
+
+ faction = "seagull"
+ maxHealth = 25
+ health = 25
+
+ response_help = "pats"
+ response_disarm = "gently pushes aside"
+ response_harm = "hits"
+
+ meat_amount = 2
+ meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/chicken
+
+ harm_intent_damage = 3
+ melee_damage_lower = 4
+ melee_damage_upper = 6
+ attacktext = list("pecked", "pinched", "wingslapped")
+
+ say_list_type = /datum/say_list/seagull
+ ai_holder_type = /datum/ai_holder/simple_mob/passive
+
+ vore_active = 1
+ vore_capacity = 5
+ vore_bump_chance = 25
+ vore_bump_emote = "greedily dives at"
+ vore_pounce_chance = 70
+ vore_default_mode = DM_HOLD
+ vore_icons = SA_ICON_LIVING
+ belly_size_multiplier = 2.5
+
+/datum/say_list/seagull
+ speak = list("Ha-Ha-Ha!","Huoh-Huoh-Huoh!","Keow?")
+ emote_hear = list("screams!","chirps.")
+ emote_see = list("pecks at the ground","looks around hungrily")
+
+/mob/living/simple_mob/vore/seagull/update_icon()
+ . = ..()
+
+ if(vore_fullness >= 2)
+ movement_cooldown = 10
+ else if(movement_cooldown == 10)
+ movement_cooldown = initial(movement_cooldown)
\ No newline at end of file
diff --git a/code/modules/vore/eating/living_ch.dm b/code/modules/vore/eating/living_ch.dm
index 9731832dbe..77c07e98cf 100644
--- a/code/modules/vore/eating/living_ch.dm
+++ b/code/modules/vore/eating/living_ch.dm
@@ -18,6 +18,7 @@
var/list/vore_fullness_ex = list("stomach" = 0) // Expanded list of fullness
var/vore_icons = 0 // Bitfield for which fields we have vore icons for.
var/vore_eyes = FALSE // For mobs with fullness specific eye overlays.
+ var/belly_size_multiplier = 1
var/vore_sprite_multiply = list("stomach" = FALSE, "taur belly" = FALSE)
var/vore_sprite_color = list("stomach" = "#000", "taur belly" = "#000")
@@ -48,6 +49,7 @@
new_fullness[B.undergarment_chosen + "-color"] = B.undergarment_color
for(var/belly_class in vore_icon_bellies)
new_fullness[belly_class] /= size_multiplier //Divided by pred's size so a macro mob won't get macro belly from a regular prey.
+ new_fullness[belly_class] *= belly_size_multiplier // Some mobs are small even at 100% size. Let's account for that.
new_fullness[belly_class] = round(new_fullness[belly_class], 1) // Because intervals of 0.25 are going to make sprite artists cry.
vore_fullness_ex[belly_class] = min(vore_capacity_ex[belly_class], new_fullness[belly_class])
vore_fullness += new_fullness[belly_class]
@@ -353,4 +355,4 @@
set name = "Check Nutrition"
set category = "Abilities"
set desc = "Check your current nutrition level."
- to_chat(src, "Current nutrition level: [nutrition].")
\ No newline at end of file
+ to_chat(src, "Current nutrition level: [nutrition].")
diff --git a/icons/mob/vore.dmi b/icons/mob/vore.dmi
index 4265bd359f..74df325400 100644
Binary files a/icons/mob/vore.dmi and b/icons/mob/vore.dmi differ
diff --git a/maps/expedition_vr/beach/_beach.dm b/maps/expedition_vr/beach/_beach.dm
index 70fbaa8dbf..b8cd10f60f 100644
--- a/maps/expedition_vr/beach/_beach.dm
+++ b/maps/expedition_vr/beach/_beach.dm
@@ -85,9 +85,10 @@
//guard = 40 //They'll stay within this range (not defining this disables them staying nearby and they will wander the map (and through step teleports))
mobs_to_pick_from = list(
/mob/living/simple_mob/vore/fennec = 300,
+ /mob/living/simple_mob/vore/seagull = 200,
/mob/living/simple_mob/animal/passive/snake/python = 100,
- /mob/living/simple_mob/vore/alienanimals/teppi = 10,
- /mob/living/simple_mob/vore/alienanimals/teppi/baby = 1
+ /mob/living/simple_mob/vore/alienanimals/teppi = 10, //ChompADD
+ /mob/living/simple_mob/vore/alienanimals/teppi/baby = 1 //ChompADD
)
/obj/tether_away_spawner/beach_outside_friendly
diff --git a/vorestation.dme b/vorestation.dme
index cd5af539d2..8b1a320ab8 100644
--- a/vorestation.dme
+++ b/vorestation.dme
@@ -3448,6 +3448,7 @@
#include "code\modules\mob\living\simple_mob\subtypes\vore\rat.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\rat_ch.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\redpanda.dm"
+#include "code\modules\mob\living\simple_mob\subtypes\vore\seagull.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\sect_drone.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\sect_queen.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\sheep.dm"