mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 03:33:21 +00:00
[MIRROR] Adds a seagull (#6821)
Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com> Co-authored-by: Raeschen <rycoop29@gmail.com>
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -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)
|
||||
*/
|
||||
|
||||
@@ -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
|
||||
|
||||
60
code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm
Normal file
60
code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm
Normal file
@@ -0,0 +1,60 @@
|
||||
/datum/category_item/catalogue/fauna/seagull // TODO: write actual lore if ever needed
|
||||
name = "Wildlife - Seagull"
|
||||
desc = "Classification: Larus brachyrhynchus\
|
||||
<br><br>\
|
||||
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)
|
||||
@@ -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]
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 328 KiB After Width: | Height: | Size: 332 KiB |
@@ -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
|
||||
|
||||
@@ -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"
|
||||
|
||||
Reference in New Issue
Block a user