diff --git a/code/datums/action.dm b/code/datums/action.dm index 7c17b11fd45..78807e22d97 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -330,32 +330,30 @@ /datum/action/item_action/hands_free/activate name = "Activate" - /datum/action/item_action/hands_free/shift_nerves name = "Shift Nerves" - /datum/action/item_action/toggle_research_scanner name = "Toggle Research Scanner" button_icon_state = "scan_mode" + var/active = FALSE /datum/action/item_action/toggle_research_scanner/Trigger() if(IsAvailable()) - owner.research_scanner = !owner.research_scanner - owner << "Research analyzer is now [owner.research_scanner ? "active" : "deactivated"]." + active = !active + if(active) + owner.research_scanner++ + else + owner.research_scanner-- + owner << "[target] research scanner has been [active ? "activated" : "deactivated"]." return 1 /datum/action/item_action/toggle_research_scanner/Remove(mob/M) - if(owner) - owner.research_scanner = 0 + if(owner && active) + owner.research_scanner-- + active = FALSE ..() -/datum/action/item_action/toggle_research_scanner/ApplyIcon(obj/screen/movable/action_button/current_button) - current_button.cut_overlays() - if(button_icon && button_icon_state) - var/image/img = image(button_icon, current_button, "scan_mode") - current_button.add_overlay(img) - /datum/action/item_action/organ_action check_flags = AB_CHECK_CONSCIOUS