diff --git a/code/modules/martial_arts/sleeping_carp.dm b/code/modules/martial_arts/sleeping_carp.dm
index 61b3d733719..bc4e15eb598 100644
--- a/code/modules/martial_arts/sleeping_carp.dm
+++ b/code/modules/martial_arts/sleeping_carp.dm
@@ -113,8 +113,6 @@
/datum/martial_art/the_sleeping_carp/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
add_to_streak("H",D)
- if ((A.mind in ticker.mode.vampires) && (A.zone_sel.selecting == "head"))
- return 0
if(check_streak(A,D))
return 1
A.do_attack_animation(D)
diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm
index 33cb567ba4a..1c32eb2345a 100644
--- a/code/modules/mob/living/carbon/human/human_attackhand.dm
+++ b/code/modules/mob/living/carbon/human/human_attackhand.dm
@@ -109,36 +109,34 @@
return 1
if(I_HARM)
+ //Vampire code
+ if(M.mind && M.mind.vampire && (M.mind in ticker.mode.vampires) && !M.mind.vampire.draining && M.zone_sel && M.zone_sel.selecting == "head" && src != M)
+ if((head && (head.flags & HEADCOVERSMOUTH)) || (wear_mask && (wear_mask.flags & MASKCOVERSMOUTH)))
+ to_chat(M, "Remove their mask!")
+ return 0
+ if((M.head && (M.head.flags & HEADCOVERSMOUTH)) || (M.wear_mask && (M.wear_mask.flags & MASKCOVERSMOUTH)))
+ to_chat(M, "Remove your mask!")
+ return 0
+ if(mind && mind.vampire && (mind in ticker.mode.vampires))
+ to_chat(M, "Your fangs fail to pierce [src.name]'s cold flesh")
+ return 0
+ if(SKELETON in mutations)
+ to_chat(M, "There is no blood in a skeleton!")
+ return 0
+ if(issmall(src) && !ckey) //Monkeyized humans are okay, humanized monkeys are okey, monkeys are not.
+ to_chat(M, "Blood from a monkey is useless!")
+ return 0
+ //we're good to suck the blood, blaah
+ M.mind.vampire.handle_bloodsucking(src)
+ add_logs(src, M, "vampirebit")
+ msg_admin_attack("[key_name_admin(M)] vampirebit [key_name_admin(src)]")
+ return 0
+ //end vampire codes
if(attacker_style && attacker_style.harm_act(H, src))
return 1
else
var/datum/unarmed_attack/attack = M.species.unarmed
- //Vampire code
- if(M.zone_sel && M.zone_sel.selecting == "head" && src != M)
- if(M.mind && M.mind.vampire && (M.mind in ticker.mode.vampires) && !M.mind.vampire.draining)
- if((head && (head.flags & HEADCOVERSMOUTH)) || (wear_mask && (wear_mask.flags & MASKCOVERSMOUTH)))
- to_chat(M, "Remove their mask!")
- return 0
- if((M.head && (M.head.flags & HEADCOVERSMOUTH)) || (M.wear_mask && (M.wear_mask.flags & MASKCOVERSMOUTH)))
- to_chat(M, "Remove your mask!")
- return 0
- if(mind && mind.vampire && (mind in ticker.mode.vampires))
- to_chat(M, "Your fangs fail to pierce [src.name]'s cold flesh")
- return 0
- if(SKELETON in mutations)
- to_chat(M, "There is no blood in a skeleton!")
- return 0
- if(issmall(src) && !ckey) //Monkeyized humans are okay, humanized monkeys are okey, monkeys are not.
- to_chat(M, "Blood from a monkey is useless!")
- return 0
- //we're good to suck the blood, blaah
- M.mind.vampire.handle_bloodsucking(src)
- add_logs(src, M, "vampirebit")
- msg_admin_attack("[key_name_admin(M)] vampirebit [key_name_admin(src)]")
- return
- //end vampire codes
-
M.do_attack_animation(src)
add_logs(src, M, "[pick(attack.attack_verb)]ed")