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
+4 -4
View File
@@ -291,7 +291,7 @@
/obj/item/organ/external/hand/right/autakh/tool
name = "engineering grasper"
action_button_name = "Deploy Mechanical Combitool"
var/augment_type = /obj/item/combitool/robotic
var/augment_type = /obj/item/weapon/combitool/robotic
/obj/item/organ/external/hand/right/autakh/tool/refresh_action_button()
. = ..()
@@ -329,15 +329,15 @@
owner.put_in_active_hand(M)
owner.visible_message("<span class='notice'>\The [M] slides out of \the [owner]'s [src].</span>","<span class='notice'>You deploy \the [M]!</span>")
/obj/item/combitool/robotic
/obj/item/weapon/combitool/robotic
name = "robotic combitool"
desc = "An integrated combitool module."
icon_state = "digitool"
/obj/item/combitool/robotic/throw_at()
/obj/item/weapon/combitool/robotic/throw_at()
usr.drop_from_inventory(src)
/obj/item/combitool/robotic/dropped()
/obj/item/weapon/combitool/robotic/dropped()
loc = null
qdel(src)