diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 50dd01c87e3..3b736e80afd 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -896,10 +896,21 @@ About the new airlock wires panel: spawn(0) close(1) else user << "You need to be wielding \the [C] to do that." + + else if(istype(C, /obj/item/weapon/melee/hammer) && !arePowerSystemsOn()) + if(locked) + user << "The airlock's bolts prevent it from being forced." + else if( !welded && !operating ) + + if(density) + spawn(0) open(1) + else + spawn(0) close(1) else ..() return + /obj/machinery/door/airlock/phoron/attackby(C as obj, mob/user as mob) if(C) ignite(is_hot(C)) diff --git a/code/game/machinery/doors/blast_door.dm b/code/game/machinery/doors/blast_door.dm index b24cedc257f..a9dfcde0768 100644 --- a/code/game/machinery/doors/blast_door.dm +++ b/code/game/machinery/doors/blast_door.dm @@ -90,8 +90,8 @@ // This only works on broken doors or doors without power. Also allows repair with Plasteel. /obj/machinery/door/blast/attackby(obj/item/weapon/C as obj, mob/user as mob) src.add_fingerprint(user) - if(istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/material/twohanded/fireaxe) && C:wielded == 1)) - if(((stat & NOPOWER) || (stat & BROKEN)) && !( src.operating )) + if(istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/material/twohanded/fireaxe) && C:wielded == 1) || (istype(C, /obj/item/weapon/melee/hammer))) + if (((stat & NOPOWER) || (stat & BROKEN)) && !( src.operating )) force_toggle() else usr << "[src]'s motors resist your effort." diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index 6b6aa8a869f..f143958658f 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -257,7 +257,7 @@ user << "\The [src] is welded shut!" return - if(istype(C, /obj/item/weapon/crowbar) || istype(C,/obj/item/weapon/material/twohanded/fireaxe)) + if(istype(C, /obj/item/weapon/crowbar) || istype(C,/obj/item/weapon/material/twohanded/fireaxe) || (istype(C, /obj/item/weapon/melee/hammer))) if(operating) return @@ -276,7 +276,7 @@ "You start forcing \the [src] [density ? "open" : "closed"] with \the [C]!",\ "You hear metal strain.") if(do_after(user,30)) - if(istype(C, /obj/item/weapon/crowbar)) + if(istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/melee/hammer))) if(stat & (BROKEN|NOPOWER) || !density) user.visible_message("\The [user] forces \the [src] [density ? "open" : "closed"] with \a [C]!",\ "You force \the [src] [density ? "open" : "closed"] with \the [C]!",\ diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm index 47de26179d3..74c05fdc91e 100644 --- a/code/game/objects/items/weapons/melee/misc.dm +++ b/code/game/objects/items/weapons/melee/misc.dm @@ -53,3 +53,25 @@ /obj/item/weapon/melee/chainsword/suicide_act(mob/user) viewers(user) << "\red [user] is slicing \himself apart with the [src.name]! It looks like \he's trying to commit suicide." return (BRUTELOSS|OXYLOSS) + + +//This is essentially a crowbar and a baseball bat in one. +/obj/item/weapon/melee/hammer + name = "kneebreaker hammer" + desc = "A heavy hammer made of plasteel, the other end could be used to pry open doors." + icon = 'icons/obj/kneehammer.dmi' + icon_state = "kneehammer" + item_state = "kneehammer" + contained_sprite = 1 + slot_flags = SLOT_BELT + force = 22 + throwforce = 70 +//This should do around 15 brute when you throw it, there's probably a better way to do it. + throw_speed = 1 + throw_range = 5 + attack_verb = list("smashed", "beaten", "slammed", "smacked", "struck", "battered", "bonked") + w_class = 3 + origin_tech = "materials=3;syndicate=2" + sharp = 0 + edge = 0 + hitsound = 'sound/weapons/genhit3.ogg' \ No newline at end of file diff --git a/html/changelogs/Fire and Glory - F&G branch 1.yml b/html/changelogs/Fire and Glory - F&G branch 1.yml new file mode 100644 index 00000000000..6563d2ec81a --- /dev/null +++ b/html/changelogs/Fire and Glory - F&G branch 1.yml @@ -0,0 +1,37 @@ +################################ +# 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 +################################# + +# Your name. +author: Fire and Glory + +# 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: "Added the Kneebreaker Hammer to the code, at a later date this'll become a traitor uplink item." + - tweak: "Ported our old biosuits." diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index de036dda76a..9898094089e 100644 Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 4e9bff25149..09e4fd8349e 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index d40e80811f7..226ca05de27 100644 Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index be2632deb21..9c4d597496b 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/icons/obj/kneehammer.dmi b/icons/obj/kneehammer.dmi new file mode 100644 index 00000000000..fb8d1fe4261 Binary files /dev/null and b/icons/obj/kneehammer.dmi differ