diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm
index 005c693f8ed..3b352f57e39 100644
--- a/code/modules/mob/living/carbon/carbon.dm
+++ b/code/modules/mob/living/carbon/carbon.dm
@@ -321,4 +321,24 @@
var/datum/organ/external/O = organs[name]
if(O.name == zone)
return O
- return null
\ No newline at end of file
+ return null
+
+/mob/living/carbon/human/drip()
+
+/mob/living/carbon/proc/vomit()
+ // only humanoids and monkeys can vomit
+ if(!istype(src,/mob/living/carbon/human) && !istype(src,/mob/living/carbon/monkey))
+ return
+
+ // Make the human vomit on the floor
+ for(var/mob/O in viewers(world.view, src))
+ O.show_message(text("\red [] throws up!", src), 1)
+ playsound(src.loc, 'splat.ogg', 50, 1)
+
+ var/turf/location = loc
+ if (istype(location, /turf/simulated))
+ location.add_vomit_floor(src, 1)
+
+ nutrition -= 20
+ adjustToxLoss(-3)
+
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index 0755df2b51b..df52c824503 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -164,7 +164,7 @@
if(B.id == "blood")
B.data = list("donor"=src,"viruses"=null,"blood_DNA"=dna.unique_enzymes,"blood_type"=dna.b_type,"resistances"=null,"trace_chem"=null,"virus2"=(virus2 ? virus2.getcopy() : null),"antibodies"=0)
-/mob/living/carbon/human/proc/drip(var/amt as num)
+/mob/living/carbon/human/drip(var/amt as num)
if(!amt)
return
diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm
index 2544cfdaf2c..b30bc302ceb 100644
--- a/code/modules/mob/living/carbon/human/life.dm
+++ b/code/modules/mob/living/carbon/human/life.dm
@@ -431,20 +431,6 @@
if(breath)
loc.assume_air(breath)
- vomit()
- // Make the human vomit on the floor
- for(var/mob/O in viewers(world.view, src))
- O.show_message(text("\red [] throws up!", src), 1)
- playsound(src.loc, 'splat.ogg', 50, 1)
-
- var/turf/location = loc
- if (istype(location, /turf/simulated))
- location.add_vomit_floor(src, 1)
-
- nutrition -= 20
- adjustToxLoss(-3)
-
-
get_breath_from_internal(volume_needed)
if(internal)
if (!contents.Find(internal))