mirror of
https://github.com/CHOMPstation/CHOMPstation.git
synced 2026-08-23 20:16:19 +01:00
A whole bunch of vore related fixes.
-Fixes prey not hearing gurgles from inside the gut. -Prey now gets it privately in full glory. -Tweaked the miniscule vore sound falloff that made things barely audible at all. People not in the immediately adjacent tiles may hear some faint noises if they listen intently enough, but that feels like a less of a problem compared to the stuff being barely hearable on ground zero tile. -Fixes hunger noises. -Hunger noises now scale gradually from 0 to 100% vol in the span of 250 to 0 nutrition. -Fixes attack anims messing up pixel offsets on our big voremobs and dogborgs. -Removes prey size multiplier from mob vore "fullness" that would prevent 1-seater mobs from touching any even slightly taller than average chars. They already have a max size blocker in the will_eat thing. -Makes bellies hide prey deathmessages again. -Fixes security oties not changing to hold mode for human arrests.(I swear I had fixed this thing before???)
This commit is contained in:
@@ -70,7 +70,7 @@
|
||||
|
||||
if(stat == DEAD)
|
||||
return 0
|
||||
if(src.loc && istype(loc,/mob/living)) deathmessage = "no message" //VOREStation Add - Prevents death messages from inside mobs
|
||||
if(src.loc && istype(loc,/obj/belly)) deathmessage = "no message" //VOREStation Add - Prevents death messages from inside mobs
|
||||
facing_dir = null
|
||||
|
||||
if(!gibbed && deathmessage != "no message") // This is gross, but reliable. Only brains use it.
|
||||
|
||||
@@ -901,6 +901,11 @@
|
||||
if(overeatduration > 1)
|
||||
overeatduration -= 2 //doubled the unfat rate
|
||||
|
||||
if(noisy == TRUE && nutrition < 250 && prob(10)) //VOREStation edit for hunger noises.
|
||||
var/growlsound = pick(hunger_sounds)
|
||||
var/growlmultiplier = 100 - (nutrition / 250 * 100)
|
||||
playsound(src, growlsound, vol = growlmultiplier, vary = 1, falloff = 0.1, ignore_walls = FALSE, preference = /datum/client_preference/digestion_noises)
|
||||
|
||||
if(!isSynthetic() && (species.flags & IS_PLANT) && (!light_organ || light_organ.is_broken()))
|
||||
if(nutrition < 200)
|
||||
take_overall_damage(2,0)
|
||||
|
||||
@@ -123,6 +123,7 @@
|
||||
//R.icon_state = "k9"
|
||||
R.pixel_x = -16
|
||||
R.old_x = -16
|
||||
R.default_pixel_x = -16
|
||||
R.dogborg = TRUE
|
||||
..()
|
||||
|
||||
@@ -174,6 +175,7 @@
|
||||
//R.icon_state = "medihound"
|
||||
R.pixel_x = -16
|
||||
R.old_x = -16
|
||||
R.default_pixel_x = -16
|
||||
R.dogborg = TRUE
|
||||
..()
|
||||
|
||||
@@ -200,6 +202,7 @@
|
||||
R.hands.icon = 'icons/mob/screen1_robot_vr.dmi'
|
||||
R.pixel_x = -16
|
||||
R.old_x = -16
|
||||
R.default_pixel_x = -16
|
||||
R.dogborg = TRUE
|
||||
..()
|
||||
|
||||
@@ -223,6 +226,7 @@
|
||||
//R.icon_state = "scrubpup"
|
||||
R.pixel_x = -16
|
||||
R.old_x = -16
|
||||
R.default_pixel_x = -16
|
||||
R.dogborg = TRUE
|
||||
..()
|
||||
|
||||
@@ -255,6 +259,7 @@
|
||||
//R.icon_state = "science"
|
||||
R.pixel_x = -16
|
||||
R.old_x = -16
|
||||
R.default_pixel_x = -16
|
||||
R.dogborg = TRUE
|
||||
..()
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
if(M.size_multiplier < vore_min_size || M.size_multiplier > vore_max_size)
|
||||
ai_log("vr/wont eat [M] because they too small or too big", 3)
|
||||
return 0
|
||||
if(vore_capacity != 0 && (vore_fullness + M.size_multiplier > vore_capacity)) // We're too full to fit them
|
||||
if(vore_capacity != 0 && (vore_fullness >= vore_capacity)) // We're too full to fit them
|
||||
ai_log("vr/wont eat [M] because I am too full", 3)
|
||||
return 0
|
||||
return 1
|
||||
@@ -188,7 +188,7 @@
|
||||
"The juices pooling beneath you sizzle against your sore skin.",
|
||||
"The churning walls slowly pulverize you into meaty nutrients.",
|
||||
"The stomach glorps and gurgles as it tries to work you into slop.")
|
||||
|
||||
|
||||
/mob/living/simple_animal/Bumped(var/atom/movable/AM, yes)
|
||||
if(ismob(AM))
|
||||
var/mob/tmob = AM
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
|
||||
old_x = -16
|
||||
old_y = 0
|
||||
default_pixel_x = -16
|
||||
pixel_x = -16
|
||||
pixel_y = 0
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
icon_dead = "megacarp-dead"
|
||||
icon_living = "megacarp"
|
||||
icon_state = "megacarp"
|
||||
|
||||
|
||||
maxHealth = 600 // Boss
|
||||
health = 600
|
||||
speed = 3
|
||||
@@ -16,6 +16,8 @@
|
||||
melee_damage_upper = 25
|
||||
old_x = -16
|
||||
old_y = -16
|
||||
default_pixel_x = -16
|
||||
default_pixel_y = -16
|
||||
pixel_x = -16
|
||||
pixel_y = -16
|
||||
vore_capacity = 2
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
|
||||
old_x = -16
|
||||
old_y = 0
|
||||
default_pixel_x = -16
|
||||
default_pixel_y = -16
|
||||
pixel_x = -16
|
||||
pixel_y = 0
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
|
||||
old_x = -16
|
||||
old_y = 0
|
||||
default_pixel_x = -16
|
||||
pixel_x = -16
|
||||
pixel_y = 0
|
||||
|
||||
|
||||
@@ -41,6 +41,7 @@
|
||||
meat_amount = 6
|
||||
old_x = -16
|
||||
old_y = 0
|
||||
default_pixel_x = -16
|
||||
pixel_x = -16
|
||||
pixel_y = 0
|
||||
|
||||
@@ -193,7 +194,7 @@
|
||||
. = ..()
|
||||
|
||||
/mob/living/simple_animal/otie/security/feed_grabbed_to_self(var/mob/living/user, var/mob/living/prey) // Make the gut start out safe for bellybrigging.
|
||||
if(ishuman(target_mob))
|
||||
if(ishuman(prey))
|
||||
vore_selected.digest_mode = DM_HOLD
|
||||
if(istype(prey,/mob/living/simple_animal/mouse))
|
||||
vore_selected.digest_mode = DM_DIGEST
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
|
||||
old_x = -16
|
||||
old_y = 0
|
||||
default_pixel_x = -16
|
||||
pixel_x = -16
|
||||
pixel_y = 0
|
||||
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
|
||||
old_x = -16
|
||||
old_y = -16
|
||||
default_pixel_x = -16
|
||||
default_pixel_y = -16
|
||||
pixel_x = -16
|
||||
pixel_y = -16
|
||||
|
||||
|
||||
@@ -68,6 +68,7 @@
|
||||
vore_icons = SA_ICON_LIVING
|
||||
old_x = -16
|
||||
old_y = 0
|
||||
default_pixel_x = -16
|
||||
pixel_x = -16
|
||||
pixel_y = 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user