diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm
index 15f5dfae981..e8b92eeda3d 100644
--- a/code/game/machinery/autolathe_datums.dm
+++ b/code/game/machinery/autolathe_datums.dm
@@ -388,7 +388,7 @@
/datum/autolathe/recipe/tacknife
name = "tactical knife"
- path = /obj/item/weapon/material/hatchet/tacknife
+ path = /obj/item/weapon/material/knife/tacknife
hidden = 1
category = "Arms and Ammunition"
diff --git a/code/game/machinery/vending_types.dm b/code/game/machinery/vending_types.dm
index ae407eb274d..3dda1887bfe 100644
--- a/code/game/machinery/vending_types.dm
+++ b/code/game/machinery/vending_types.dm
@@ -600,7 +600,7 @@
/obj/item/weapon/material/kitchen/utensil/knife = 6,
/obj/item/weapon/material/kitchen/utensil/spoon = 6,
/obj/item/weapon/material/knife = 2,
- /obj/item/weapon/material/knife/butch = 2,
+ /obj/item/weapon/material/hatchet/butch = 2,
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 8,
/obj/item/clothing/suit/chef/classic = 2,
/obj/item/weapon/material/kitchen/rollingpin = 2,
@@ -733,7 +733,7 @@
/obj/item/ammo_magazine/c45x = 6,
/obj/item/ammo_magazine/a556 = 12,
/obj/item/ammo_magazine/a556/ap = 4,
- /obj/item/weapon/material/hatchet/tacknife = 4,
+ /obj/item/weapon/material/knife/tacknife = 4,
/obj/item/device/firing_pin = 12
)
random_itemcount = 0
diff --git a/code/game/objects/items/weapons/improvised_components.dm b/code/game/objects/items/weapons/improvised_components.dm
index 877b0751461..5e3408c4015 100644
--- a/code/game/objects/items/weapons/improvised_components.dm
+++ b/code/game/objects/items/weapons/improvised_components.dm
@@ -9,7 +9,7 @@
/obj/item/weapon/material/butterflyconstruction/attackby(obj/item/W as obj, mob/user as mob)
if(isscrewdriver(W))
user << "You finish the concealed blade weapon."
- new /obj/item/weapon/material/butterfly(user.loc, material.name)
+ new /obj/item/weapon/material/knife/butterfly(user.loc, material.name)
qdel(src)
return
diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm
index 980ea727ecd..bd94c78107c 100644
--- a/code/game/objects/items/weapons/material/knives.dm
+++ b/code/game/objects/items/weapons/material/knives.dm
@@ -1,23 +1,90 @@
-/obj/item/weapon/material/butterfly
+/*
+ * Knives. They stab your eyes out, and fit into boots. Copypasted the screwdriver code
+ */
+/obj/item/weapon/material/knife
+ name = "kitchen knife"
+ icon = 'icons/obj/kitchen.dmi'
+ icon_state = "knife"
+ desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come."
+ flags = CONDUCT
+ sharp = 1
+ edge = 1
+ var/active = 1 // For butterfly knives
+ force_divisor = 0.15 // 9 when wielded with hardness 60 (steel)
+ matter = list(DEFAULT_WALL_MATERIAL = 12000)
+ origin_tech = list(TECH_MATERIAL = 1)
+ attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
+ unbreakable = 1
+
+/obj/item/weapon/material/knife/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob, var/target_zone)
+ if(active == 1)
+ if(target_zone != "eyes" && target_zone != "head")
+ return ..()
+ if((CLUMSY in user.mutations) && prob(50))
+ M = user
+ return eyestab(M,user)
+
+/obj/item/weapon/material/knife/ritual
+ name = "ritual knife"
+ desc = "The unearthly energies that once powered this blade are now dormant."
+ icon = 'icons/obj/wizard.dmi'
+ icon_state = "render"
+ applies_material_colour = 0
+
+/obj/item/weapon/material/knife/bayonet
+ name = "bayonet"
+ desc = "A sharp military knife, can be attached to a rifle."
+ icon = 'icons/obj/weapons.dmi'
+ icon_state = "bayonet"
+ item_state = "knife"
+ applies_material_colour = 0
+ force_divisor = 0.35
+ can_embed = 0
+ w_class = 3
+
+/obj/item/weapon/material/knife/tacknife
+ name = "tactical knife"
+ desc = "You'd be killing loads of people if this was Medal of Valor: Heroes of Tau Ceti."
+ icon = 'icons/obj/weapons.dmi'
+ icon_state = "tacknife"
+ item_state = "knife"
+ attack_verb = list("stabbed", "chopped", "cut")
+ applies_material_colour = 1
+ force_divisor = 0.3 // 18 with hardness 60 (steel)
+
+/obj/item/weapon/material/knife/trench
+ name = "trench knife"
+ desc = "A military knife used to slash and stab enemies in close quarters."
+ force_divisor = 0.4
+ icon = 'icons/obj/weapons.dmi'
+ icon_state = "trench"
+ item_state = "knife"
+ w_class = 3
+ applies_material_colour = 0
+ slot_flags = SLOT_BELT
+
+//Butterfly knives stab your eyes out too!
+
+/obj/item/weapon/material/knife/butterfly
name = "butterfly knife"
desc = "A basic metal blade concealed in a lightweight plasteel grip. Small enough when folded to fit in a pocket."
- icon_state = "butterflyknife"
- item_state = null
+ icon = 'icons/obj/weapons.dmi'
+ icon_state = "butterfly"
hitsound = null
- var/active = 0
+ active = 0
w_class = 2
attack_verb = list("patted", "tapped")
force_divisor = 0.25 // 15 when wielded with hardness 60 (steel)
thrown_force_divisor = 0.25 // 5 when thrown with weight 20 (steel)
-/obj/item/weapon/material/butterfly/update_force()
+/obj/item/weapon/material/knife/butterfly/update_force()
if(active)
edge = 1
sharp = 1
..() //Updates force.
throwforce = max(3,force-3)
- hitsound = 'sound/weapons/bladeslice.ogg'
icon_state += "_open"
+ hitsound = 'sound/weapons/bladeslice.ogg'
w_class = 3
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
else
@@ -29,13 +96,14 @@
w_class = initial(w_class)
attack_verb = initial(attack_verb)
-/obj/item/weapon/material/butterfly/switchblade
+/obj/item/weapon/material/knife/butterfly/switchblade
name = "switchblade"
desc = "A classic switchblade with gold engraving. Just holding it makes you feel like a gangster."
+ icon = 'icons/obj/weapons.dmi'
icon_state = "switchblade"
unbreakable = 1
-/obj/item/weapon/material/butterfly/attack_self(mob/user)
+/obj/item/weapon/material/knife/butterfly/attack_self(mob/user)
active = !active
if(active)
user << "You flip out \the [src]."
@@ -43,53 +111,4 @@
else
user << "\The [src] can now be concealed."
update_force()
- add_fingerprint(user)
-
-/*
- * Kitchen knives
- */
-/obj/item/weapon/material/knife
- name = "kitchen knife"
- icon = 'icons/obj/kitchen.dmi'
- icon_state = "knife"
- desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come."
- flags = CONDUCT
- sharp = 1
- edge = 1
- force_divisor = 0.15 // 9 when wielded with hardness 60 (steel)
- matter = list(DEFAULT_WALL_MATERIAL = 12000)
- origin_tech = list(TECH_MATERIAL = 1)
- attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
- unbreakable = 1
-
-/obj/item/weapon/material/knife/hook
- name = "meat hook"
- desc = "A sharp, metal hook what sticks into things."
- icon_state = "hook_knife"
- item_state = "hook_knife"
-
-/obj/item/weapon/material/knife/ritual
- name = "ritual knife"
- desc = "The unearthly energies that once powered this blade are now dormant."
- icon = 'icons/obj/wizard.dmi'
- icon_state = "render"
- applies_material_colour = 0
-
-/obj/item/weapon/material/knife/butch
- name = "butcher's cleaver"
- icon = 'icons/obj/kitchen.dmi'
- icon_state = "butch"
- desc = "A huge thing used for chopping and chopping up meat."
- force_divisor = 0.25 // 15 when wielded with hardness 60 (steel)
- attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
-
-/obj/item/weapon/material/knife/bayonet
- name = "bayonet"
- desc = "A sharp military knife, can be attached to a rifle."
- icon = 'icons/obj/weapons.dmi'
- icon_state = "bayonet"
- item_state = "knife"
- applies_material_colour = 0
- force_divisor = 0.35
- can_embed = 0
- w_class = 3
\ No newline at end of file
+ add_fingerprint(user)
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm
index ae28d217466..229cae1b236 100644
--- a/code/game/objects/items/weapons/material/misc.dm
+++ b/code/game/objects/items/weapons/material/misc.dm
@@ -22,6 +22,14 @@
attack_verb = list("chopped", "torn", "cut")
applies_material_colour = 0
+/obj/item/weapon/material/hatchet/butch
+ name = "butcher's cleaver"
+ icon = 'icons/obj/kitchen.dmi'
+ icon_state = "butch"
+ desc = "A huge thing used for chopping and chopping up meat."
+ force_divisor = 0.25 // 15 when wielded with hardness 60 (steel)
+ attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
+
/obj/item/weapon/material/hatchet/unathiknife
name = "duelling knife"
desc = "A length of leather-bound wood studded with razor-sharp teeth. How crude."
@@ -29,14 +37,13 @@
icon_state = "unathiknife"
attack_verb = list("ripped", "torn", "cut")
-/obj/item/weapon/material/hatchet/tacknife
- name = "tactical knife"
- desc = "You'd be killing loads of people if this was Medal of Valor: Heroes of Tau Ceti."
- icon = 'icons/obj/weapons.dmi'
- icon_state = "tacknife"
- item_state = "knife"
- attack_verb = list("stabbed", "chopped", "cut")
- applies_material_colour = 1
+/obj/item/weapon/material/hook
+ name = "meat hook"
+ sharp = 1
+ edge = 1
+ desc = "A sharp, metal hook that sticks into things."
+ icon_state = "hook_knife"
+ item_state = "hook_knife"
/obj/item/weapon/material/minihoe // -- Numbers
name = "mini hoe"
diff --git a/code/game/objects/items/weapons/material/swords.dm b/code/game/objects/items/weapons/material/swords.dm
index ab076de1c90..2e640352af1 100644
--- a/code/game/objects/items/weapons/material/swords.dm
+++ b/code/game/objects/items/weapons/material/swords.dm
@@ -52,16 +52,6 @@
cleave(user, target)
..()
-/obj/item/weapon/material/sword/trench
- name = "trench knife"
- desc = "A military knife used to slash and stab enemies in close quarters."
- force_divisor = 0.4
- icon_state = "trench"
- item_state = "knife"
- w_class = 3
- slot_flags = SLOT_BELT
- parry_chance = 5
-
/obj/item/weapon/material/sword/sabre
name = "sabre"
desc = "A sharp curved backsword."
diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm
index 77e653fd8a8..122d0bebe7f 100644
--- a/code/game/objects/items/weapons/storage/belt.dm
+++ b/code/game/objects/items/weapons/storage/belt.dm
@@ -145,7 +145,7 @@
/obj/item/weapon/melee,
/obj/item/weapon/gun/projectile/sec,
/obj/item/taperoll/police,
- /obj/item/weapon/material/sword/trench,
+ /obj/item/weapon/material/knife/trench,
/obj/item/weapon/shield/energy,
/obj/item/weapon/shield/riot/tact,
/obj/item/device/holowarrant
@@ -235,7 +235,7 @@
/obj/item/weapon/plastique,
/obj/item/weapon/gun/projectile/pistol,
/obj/item/weapon/gun/energy/crossbow,
- /obj/item/weapon/material/sword/trench,
+ /obj/item/weapon/material/knife/trench,
/obj/item/ammo_casing/a145,
/obj/item/device/radio/uplink,
/obj/item/weapon/card/emag,
diff --git a/code/game/objects/random/random.dm b/code/game/objects/random/random.dm
index ddbbba852cb..d3deb874be3 100644
--- a/code/game/objects/random/random.dm
+++ b/code/game/objects/random/random.dm
@@ -183,15 +183,15 @@
/obj/item/weapon/storage/pill_bottle/zoom = 2,
/obj/item/weapon/reagent_containers/glass/beaker/vial/random/toxin = 1,
/obj/item/weapon/contraband/poster = 5,
- /obj/item/weapon/material/butterfly = 2,
+ /obj/item/weapon/material/knife/butterfly = 2,
/obj/item/weapon/material/butterflyblade = 3,
/obj/item/weapon/material/butterflyhandle = 3,
/obj/item/weapon/material/wirerod = 3,
/obj/item/weapon/melee/baton/cattleprod = 1,
- /obj/item/weapon/material/hatchet/tacknife = 1,
+ /obj/item/weapon/material/knife/tacknife = 1,
/obj/item/weapon/material/kitchen/utensil/knife/boot = 2,
/obj/item/weapon/storage/secure/briefcase/money = 1,
- /obj/item/weapon/material/butterfly/switchblade = 1,
+ /obj/item/weapon/material/knife/butterfly/switchblade = 1,
/obj/item/weapon/reagent_containers/syringe/drugs = 1,
/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/libertycap = 2,
/obj/item/weapon/reagent_containers/food/snacks/grown/ambrosiavulgaris = 2,
@@ -756,8 +756,8 @@
/obj/item/toy/balloon = 0.4,
/obj/item/weapon/haircomb = 0.5,
/obj/item/weapon/lipstick = 0.6,
- /obj/item/weapon/material/knife/hook = 0.3,
- /obj/item/weapon/material/hatchet/tacknife = 0.4,
+ /obj/item/weapon/material/hook = 0.3,
+ /obj/item/weapon/material/knife/tacknife = 0.4,
/obj/item/weapon/storage/fancy/cigarettes = 1.2,
/obj/item/weapon/storage/fancy/cigarettes/dromedaryco = 0.8,
/obj/item/weapon/storage/fancy/cigarettes/killthroat = 0.3,
@@ -954,7 +954,6 @@
/obj/item/weapon/material/sword/katana,
/obj/item/weapon/material/sword/rapier,
/obj/item/weapon/material/sword/longsword,
- /obj/item/weapon/material/sword/trench,
/obj/item/weapon/material/sword/sabre,
/obj/item/weapon/material/sword/axe,
/obj/item/weapon/material/sword/khopesh,
diff --git a/code/modules/cargo/exports/weapons.dm b/code/modules/cargo/exports/weapons.dm
index dae038fae44..50629e850ca 100644
--- a/code/modules/cargo/exports/weapons.dm
+++ b/code/modules/cargo/exports/weapons.dm
@@ -13,7 +13,7 @@
/datum/export/weapon/knife
cost = 100
unit_name = "tactical knife"
- export_types = list(/obj/item/weapon/material/hatchet/tacknife )
+ export_types = list(/obj/item/weapon/material/knife/tacknife )
/datum/export/weapon/laser
cost = 200
diff --git a/code/modules/cargo/random_stock/t2_uncommon.dm b/code/modules/cargo/random_stock/t2_uncommon.dm
index d0db0e56a34..747a7b22da0 100644
--- a/code/modules/cargo/random_stock/t2_uncommon.dm
+++ b/code/modules/cargo/random_stock/t2_uncommon.dm
@@ -288,14 +288,14 @@ STOCK_ITEM_UNCOMMON(briefcase, 2)
STOCK_ITEM_UNCOMMON(blade, 1.2)
var/list/blades = list(
- /obj/item/weapon/material/butterfly = 1,
- /obj/item/weapon/material/butterfly/switchblade = 1,
- /obj/item/weapon/material/knife/hook = 1.5,
+ /obj/item/weapon/material/knife/butterfly = 1,
+ /obj/item/weapon/material/knife/butterfly/switchblade = 1,
+ /obj/item/weapon/material/hook = 1.5,
/obj/item/weapon/material/knife/ritual = 1.5,
- /obj/item/weapon/material/knife/butch = 1,
+ /obj/item/weapon/material/hatchet/butch = 1,
/obj/item/weapon/material/hatchet = 1.5,
/obj/item/weapon/material/hatchet/unathiknife = 0.75,
- /obj/item/weapon/material/hatchet/tacknife = 1
+ /obj/item/weapon/material/knife/tacknife = 1
)
var/type = pickweight(blades)
diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm
index 04e907e5459..efe394f5e01 100644
--- a/code/modules/clothing/clothing.dm
+++ b/code/modules/clothing/clothing.dm
@@ -679,7 +679,7 @@
/obj/item/clothing/shoes/attackby(var/obj/item/I, var/mob/user)
- if(can_hold_knife && is_type_in_list(I, list(/obj/item/weapon/material/shard, /obj/item/weapon/material/butterfly, /obj/item/weapon/material/kitchen/utensil, /obj/item/weapon/material/hatchet/tacknife, /obj/item/weapon/material/sword/trench)))
+ if(can_hold_knife && is_type_in_list(I, list(/obj/item/weapon/material/shard, /obj/item/weapon/material/kitchen/utensil, /obj/item/weapon/material/knife)))
if(holding)
user << "\The [src] is already holding \a [holding]."
return
diff --git a/code/modules/item_worth/material_weapons.dm b/code/modules/item_worth/material_weapons.dm
index 3430419fabe..9d844562889 100644
--- a/code/modules/item_worth/material_weapons.dm
+++ b/code/modules/item_worth/material_weapons.dm
@@ -7,7 +7,7 @@
/obj/item/weapon/material/kitchen
worth_multiplier = 1.1
-/obj/item/weapon/material/butterfly
+/obj/item/weapon/material/knife/butterfly
worth_multiplier = 8
/obj/item/weapon/material/harpoon
diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm
index 53a0f98e337..286b648dabe 100644
--- a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm
+++ b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm
@@ -44,7 +44,7 @@
/obj/item/weapon/autopsy_scanner,\
/obj/item/weapon/bikehorn,\
/obj/item/weapon/bonesetter,\
- /obj/item/weapon/material/knife/butch,\
+ /obj/item/weapon/material/hatchet/butch,\
/obj/item/weapon/caution,\
/obj/item/weapon/caution/cone,\
/obj/item/weapon/crowbar,\
diff --git a/code/modules/surgery/facial_surgery.dm b/code/modules/surgery/facial_surgery.dm
index 21d99630a75..096b23517af 100644
--- a/code/modules/surgery/facial_surgery.dm
+++ b/code/modules/surgery/facial_surgery.dm
@@ -21,7 +21,7 @@
/datum/surgery_step/generic/prepare_face
allowed_tools = list(
/obj/item/weapon/retractor = 100,
- /obj/item/weapon/material/hatchet/tacknife = 75
+ /obj/item/weapon/material/knife/tacknife = 75
)
min_duration = 90
@@ -167,7 +167,7 @@
/datum/surgery_step/robotics/face/prepare_face
allowed_tools = list(
/obj/item/weapon/retractor = 100,
- /obj/item/weapon/material/hatchet/tacknife = 75
+ /obj/item/weapon/material/knife/tacknife = 75
)
min_duration = 90
diff --git a/html/changelogs/VTCobaltblood - FUCK-GUNS.yml b/html/changelogs/VTCobaltblood - FUCK-GUNS.yml
new file mode 100644
index 00000000000..4f6336307cc
--- /dev/null
+++ b/html/changelogs/VTCobaltblood - FUCK-GUNS.yml
@@ -0,0 +1,42 @@
+################################
+# Example Changelog File
+#
+# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
+#
+# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
+# When it is, any changes listed below will disappear.
+#
+# Valid Prefixes:
+# bugfix
+# wip (For works in progress)
+# tweak
+# soundadd
+# sounddel
+# rscadd (general adding of nice things)
+# rscdel (general deleting of nice things)
+# imageadd
+# imagedel
+# maptweak
+# spellcheck (typo fixes)
+# experiment
+# balance
+# admin
+# backend
+# security
+# refactor
+#################################
+
+# Your name.
+author: VTCobaltblood
+
+# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
+delete-after: True
+
+# Any changes you've made. See valid prefix list above.
+# INDENT WITH TWO SPACES. NOT TABS. SPACES.
+# SCREW THIS UP AND IT WON'T WORK.
+# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
+# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
+changes:
+ - rscadd: "All knives can now eyestab! Knife enthusiasts rejoice!"
+ - bugfix: "Trench knives are no longer swords, and will not appear where a sword would appear."
\ No newline at end of file
diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi
index 141c9b5ba52..e483e1793d6 100644
Binary files a/icons/obj/weapons.dmi and b/icons/obj/weapons.dmi differ