Killing off inconsistencies with impact wrenches / combi-tools (#7269)

Part 1 in the "why my impact wrench no wrench bolt" saga

tl;dr for end users: combitools / impact wrenches now work on everything their non-powered versions do (except mechs and RIGs, tune in next time on dragon ball Z for that)

essentially all this PR does is murder every istype() check possible that could use a helper function instead, most notably many pen checks with ispen(). it also repaths combitools and powerdrills to /obj/item/weapon so they aren't instantly taken out of contention by half of the known attackby() prompts

I already squashed a couple runtimes here and there from the pen changes and it's possible I missed another because pencode is another scourge upon our lives
This commit is contained in:
JohnWildkins
2019-10-26 15:20:40 -04:00
committed by Erki
parent 751f77550a
commit 9c335f6c00
47 changed files with 141 additions and 119 deletions

View File

@@ -30,7 +30,7 @@
if(istype(O, /obj/item/weapon/book))
user.drop_from_inventory(O,src)
update_icon()
else if(istype(O, /obj/item/weapon/pen))
else if(O.ispen())
var/newname = sanitizeSafe(input("What would you like to title this bookshelf?"), MAX_NAME_LEN)
if(!newname)
return
@@ -235,7 +235,7 @@
else
to_chat(user, "<span class='notice'>There's already something in [title]!</span>")
return
if(istype(W, /obj/item/weapon/pen))
if(W.ispen())
if(unique)
to_chat(user, "These pages don't seem to take the ink well. Looks like you can't modify it.")
return