Files
amsy2andGitHub be0fb31401 Adds/Fixes toolbelt power tool sprites and updates Proto Nitrate tools (#5431)
## About The Pull Request

I've added sprites and made them show properly when you put power tools
on belt, this includes: Power Drill, Jaws of Life, Science Power Drill,
Hybrid Cutters

As for Proto Nitrate tools
- Reworked icons and added toolbelt sprites
- Added sci tool variants (Proto Nitrate Hybrid Cutters from science
CAN'T pry open doors)
- Added crafting recipes for new tools
- Reduced crafting time to 3s 
- Fixed Proto Nitrate welder missing flame sprite on its icon
## Why It's Good For The Game

Toolbelts finally look properly

Adding sci variants of Proto Nitrate tools means atmos can hand the
hybrid cutters to crew without worrying about the prying

idk why the hell I originally made crafting time for Proto Nitrate tools
20s but it's just annoying, so I'm cutting it down, you're already
spending lot of time to actually make these crystals and long craft time
makes it pain to mass produce for crew

## Proof Of Testing

<img width="268" height="268" alt="image"
src="https://github.com/user-attachments/assets/40c83d41-e850-49b2-86f5-2c9a84fd2652"
/>
<img width="515" height="796" alt="image"
src="https://github.com/user-attachments/assets/c261042b-3ecf-43c0-8c9b-61596c0a3ca5"
/>

</details>

## Changelog

🆑
add: Added sci variants of Proto Nitrate power tools - available in
crafting menu
fix: Fixed power tools not showing on the toolbelts
image: Reworked Proto Nitrate icons
image: Added sprites for power tools on toolbelt
/:cl
2026-04-19 12:57:18 +02:00

95 lines
4.5 KiB
Plaintext

// Power Tools Belt Overlays
/obj/item/crowbar/power/get_belt_overlay()
if(tool_behaviour != TOOL_WIRECUTTER)
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "jaws")
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "jaws_on")
/obj/item/crowbar/power/science/get_belt_overlay()
if(tool_behaviour != TOOL_WIRECUTTER)
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "sci_jaws")
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "sci_jaws_on")
/obj/item/screwdriver/power/get_belt_overlay()
if(tool_behaviour != TOOL_WRENCH)
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "drill")
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "drill_on")
/obj/item/screwdriver/power/science/get_belt_overlay()
if(tool_behaviour != TOOL_WRENCH)
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "sci_drill")
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "sci_drill_on")
// Proto Nitrate Tools
/obj/item/crowbar/power/protonitrate
name = "proto nitrate jaws of life"
desc = "Hydraulic tool combined with Proto Nitrate Crystal for increased efficeincy."
icon = 'modular_zubbers/icons/obj/equipment/equipment.dmi'
icon_state = "pn_jaws"
toolspeed = 0.5
/obj/item/crowbar/power/protonitrate/Initialize(mapload)
. = ..()
UnregisterSignal(src, COMSIG_TRANSFORMING_ON_TRANSFORM)
RegisterSignal(src, COMSIG_TRANSFORMING_ON_TRANSFORM, PROC_REF(on_transform_toolspeed))
/obj/item/crowbar/power/protonitrate/proc/on_transform_toolspeed(obj/item/source, mob/user, active) //Toolspeed affects how fast you can force open doors, this is so ONLY the prying mode has speed 0.5 while cutting mode is 0.25
SIGNAL_HANDLER
tool_behaviour = (active ? second_tool_behavior : first_tool_behavior)
if(user)
balloon_alert(user, "attached [tool_behaviour == first_tool_behavior ? inactive_text : active_text]")
playsound(src, 'sound/items/tools/change_jaws.ogg', 50, TRUE)
if(tool_behaviour != TOOL_WIRECUTTER)
RemoveElement(/datum/element/cuffsnapping, snap_time_weak_handcuffs, snap_time_strong_handcuffs)
toolspeed = 0.5
else
AddElement(/datum/element/cuffsnapping, snap_time_weak_handcuffs, snap_time_strong_handcuffs)
toolspeed = 0.25
return COMPONENT_NO_DEFAULT_MESSAGE
/obj/item/crowbar/power/protonitrate/get_belt_overlay()
if(tool_behaviour != TOOL_WIRECUTTER)
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "pn_jaws")
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "pn_jaws_on")
/obj/item/crowbar/power/protonitrate/science
name = "proto nitrate hybrid cutters" // hybrid between crowbar and wirecutters
desc = "Hybrid cutters combined with Proto Nitrate Crystal for increased efficeincy but without the hydraulic force required to pry open doors."
icon_state = "pn_jaws_sci"
inhand_icon_state = "jaws_sci"
force_opens = FALSE
/obj/item/crowbar/power/protonitrate/science/get_belt_overlay()
if(tool_behaviour != TOOL_WIRECUTTER)
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "pn_sci_jaws")
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "pn_sci_jaws_on")
/obj/item/screwdriver/power/protonitrate
name = "proto nitrate hand drill"
desc = "Hand drill combined with Proto Nitrate Crystal for increased efficeincy."
icon = 'modular_zubbers/icons/obj/equipment/equipment.dmi'
icon_state = "pn_drill"
toolspeed = 0.25
/obj/item/screwdriver/power/protonitrate/get_belt_overlay()
if(tool_behaviour != TOOL_WRENCH)
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "pn_drill")
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "pn_drill_on")
/obj/item/screwdriver/power/protonitrate/science
icon_state = "pn_drill_sci"
/obj/item/screwdriver/power/protonitrate/science/get_belt_overlay()
if(tool_behaviour != TOOL_WRENCH)
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "pn_sci_drill")
return mutable_appearance('modular_zubbers/icons/obj/clothing/belt_overlays.dmi', "pn_sci_drill_on")
/obj/item/weldingtool/experimental/protonitrate
name = "proto nitrate welding tool"
desc = "An experimental welder further enchanced by combining it with Proto Nitrate Crystal."
icon = 'modular_zubbers/icons/obj/equipment/equipment.dmi'
icon_state = "pn_welder"
toolspeed = 0.25