diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm
index c78723f34f4..afb2ca35a73 100644
--- a/code/_onclick/item_attack.dm
+++ b/code/_onclick/item_attack.dm
@@ -34,22 +34,6 @@
if (do_surgery(M,user,src))
return 0
- // Knifing
- if(edge) //this is still absolutely fucking horrible
- for(var/obj/item/weapon/grab/G in M.grabbed_by)
- if(G.assailant == user && G.state >= GRAB_NECK)
- //TODO: better alternative for applying damage multiple times? Nice knifing sound?
- M.apply_damage(20, BRUTE, "head", 0, sharp=sharp, edge=edge)
- M.apply_damage(20, BRUTE, "head", 0, sharp=sharp, edge=edge)
- M.apply_damage(20, BRUTE, "head", 0, sharp=sharp, edge=edge)
- M.adjustOxyLoss(60) // Brain lacks oxygen immediately, pass out
- user.visible_message("[user] slit [M]'s throat open with \the [name]!")
- user.attack_log += "\[[time_stamp()]\] Knifed [M.name] ([M.ckey]) with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])"
- M.attack_log += "\[[time_stamp()]\] Got knifed by [user.name] ([user.ckey]) with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])"
- msg_admin_attack("[key_name(user)] knifed [key_name(M)] with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])" )
- return
-
-
if (istype(M,/mob/living/carbon/brain))
messagesource = M:container
if (hitsound && force > 0)
diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm
index 8964816317d..b2be2f8e29d 100644
--- a/code/modules/mob/living/carbon/human/human_attackhand.dm
+++ b/code/modules/mob/living/carbon/human/human_attackhand.dm
@@ -226,32 +226,4 @@
return
/mob/living/carbon/human/proc/afterattack(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, inrange, params)
- return
-
-/mob/living/carbon/human/proc/grab_joint(var/mob/living/user, var/def_zone)
- var/has_grab = 0
- for(var/obj/item/weapon/grab/G in list(user.l_hand, user.r_hand))
- if(G.affecting == src && G.state == GRAB_NECK)
- has_grab = 1
- break
-
- if(!has_grab)
- return 0
-
- if(!def_zone) def_zone = user.zone_sel.selecting
- var/target_zone = check_zone(def_zone)
- if(!target_zone)
- return 0
- var/obj/item/organ/external/organ = get_organ(check_zone(target_zone))
- if(!organ || organ.is_broken())
- return 0
-
- if(organ.limb_name == "chest" || organ.limb_name == "groin")
- return 0 //what how do you dislocate a chest with your hands or a groin really
-
- user.visible_message("[user] begins to fracture [src]'s [organ.name]!")
- if(do_after(user, 100))
- organ.fracture()
- src.visible_message("[src]'s [organ.name] [pick("cracks","gives way","snaps","collapses")]!")
- return 1
- return 0
\ No newline at end of file
+ return
\ No newline at end of file
diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm
index 99c52c2ecf9..e37b3af25e9 100644
--- a/code/modules/mob/mob_grab.dm
+++ b/code/modules/mob/mob_grab.dm
@@ -293,21 +293,11 @@
assailant << "You no longer pin [affecting] to the ground."
force_down = 0
return
- if("grab")
- if(state < GRAB_AGGRESSIVE)
- assailant << "You require a better grab to do this."
- return
- var/obj/item/organ/external/organ = affected.get_organ(check_zone(last_hit_zone))
- if(!organ || organ.is_broken() || organ.limb_name == "chest" || organ.limb_name == "groin") //necessary to prevent chest and groin
- return
- assailant.visible_message("[assailant] begins [pick("bending", "twisting")] [affecting]'s [organ.name] into a jointlock!")
- var/armor = affected.run_armor_check(affecting, "melee")
- if(armor < 2)
- affecting << "You feel extreme pain!"
- affecting.apply_damage(40, HALLOSS, last_hit_zone, armor)
- return
- if("harm")
+ if("grab")
+ return
+
+ if("harm")
if(last_hit_zone == "eyes")
if(state < GRAB_NECK)
assailant << "You require a better grab to do this."
@@ -330,14 +320,7 @@
if (eyes.damage >= eyes.min_broken_damage)
if(M.stat != 2)
M << "\red You go blind!"
- else if(last_hit_zone != "chest" && last_hit_zone != "groin") //headbutting should probably use head hitzone,
- if(state < GRAB_NECK)// but, chest and groin being fractured doesn't paticulary make sense in this context
- assailant << "You require a better grab to do this."//and head does
- return
- if(affected.grab_joint(assailant))
- playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
- return
- else
+ else if(last_hit_zone == "head")
if(affecting.lying)
return
assailant.visible_message("[assailant] thrusts \his head into [affecting]'s skull!")
@@ -352,6 +335,7 @@
affecting.attack_log += text("\[[time_stamp()]\] Headbutted by [assailant.name] ([assailant.ckey])")
msg_admin_attack("[key_name(assailant)] has headbutted [key_name(affecting)]")
return
+
if("disarm")
if(state < GRAB_AGGRESSIVE)
assailant << "You require a better grab to do this."