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