diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm
index 12a05e6d3a4..8bfe71121d4 100644
--- a/code/defines/obj/weapon.dm
+++ b/code/defines/obj/weapon.dm
@@ -388,6 +388,10 @@
var/obj/machinery/machine
+/obj/item/weapon/pai_cable/Destroy()
+ machine = null
+ return ..()
+
///////////////////////////////////////Stock Parts /////////////////////////////////
/obj/item/weapon/storage/part_replacer
diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm
index fac5e9fb70d..8391c90434a 100644
--- a/code/game/objects/items/weapons/storage/toolbox.dm
+++ b/code/game/objects/items/weapons/storage/toolbox.dm
@@ -72,12 +72,12 @@
/obj/item/weapon/storage/toolbox/syndicate/New()
..()
new /obj/item/clothing/gloves/yellow(src)
- new /obj/item/weapon/screwdriver(src)
- new /obj/item/weapon/wrench(src)
+ new /obj/item/weapon/screwdriver/power(src)
+ new /obj/item/stack/cable_coil/random(src,30)
new /obj/item/weapon/weldingtool/experimental(src)
- new /obj/item/weapon/crowbar(src)
- new /obj/item/weapon/wirecutters(src)
+ new /obj/item/weapon/crowbar/power(src)
new /obj/item/device/multitool(src)
+ new /obj/item/device/analyzer(src)
/obj/item/weapon/storage/toolbox/lunchbox
max_storage_space = ITEMSIZE_COST_SMALL * 4 //slightly smaller than a toolbox
diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm
index 2e7fc52cad7..df50214e945 100644
--- a/code/game/objects/items/weapons/tools.dm
+++ b/code/game/objects/items/weapons/tools.dm
@@ -53,7 +53,7 @@
icon_state = "drill_bolt"
item_state = "drill"
usesound = 'sound/items/drill_use.ogg'
- matter = list(DEFAULT_WALL_MATERIAL = 150, MAT_SILVER = 50, MAT_TITANIUM = 25)
+ matter = list(DEFAULT_WALL_MATERIAL = 150, MAT_SILVER = 50)
origin_tech = list(TECH_MATERIAL = 2, TECH_ENGINEERING = 2)
force = 8
w_class = ITEMSIZE_SMALL
@@ -155,7 +155,7 @@
desc = "A simple powered hand drill. It's fitted with a screw bit."
icon_state = "drill_screw"
item_state = "drill"
- matter = list(DEFAULT_WALL_MATERIAL = 150, MAT_SILVER = 50, MAT_TITANIUM = 25)
+ matter = list(DEFAULT_WALL_MATERIAL = 150, MAT_SILVER = 50)
origin_tech = list(TECH_MATERIAL = 2, TECH_ENGINEERING = 2)
force = 8
@@ -240,7 +240,7 @@
icon_state = "jaws_cutter"
item_state = "jawsoflife"
origin_tech = list(TECH_MATERIAL = 2, TECH_ENGINEERING = 2)
- matter = list(MAT_METAL=150, MAT_SILVER=50, MAT_TITANIUM=25)
+ matter = list(MAT_METAL=150, MAT_SILVER=50)
usesound = 'sound/items/jaws_cut.ogg'
force = 15
toolspeed = 0.25
@@ -844,7 +844,7 @@
desc = "A set of jaws of life, compressed through the magic of science. It's fitted with a prying head."
icon_state = "jaws_pry"
item_state = "jawsoflife"
- matter = list(MAT_METAL=150, MAT_SILVER=50, MAT_TITANIUM=25)
+ matter = list(MAT_METAL=150, MAT_SILVER=50)
origin_tech = list(TECH_MATERIALS = 2, TECH_ENGINEERING = 2)
usesound = 'sound/items/jaws_pry.ogg'
force = 15
diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm
index b7df12fa0a2..876340cb2a2 100644
--- a/code/modules/clothing/masks/gasmask.dm
+++ b/code/modules/clothing/masks/gasmask.dm
@@ -104,9 +104,9 @@
flags_inv = HIDEEARS|HIDEFACE
item_state_slots = list(slot_r_hand_str = "mime", slot_l_hand_str = "mime")
-/obj/item/clothing/mask/gas/death_commando
- name = "Death Commando Mask"
- icon_state = "death_commando_mask"
+/obj/item/clothing/mask/gas/commando
+ name = "commando mask"
+ icon_state = "fullgas"
item_state_slots = list(slot_r_hand_str = "swat", slot_l_hand_str = "swat")
siemens_coefficient = 0.2
diff --git a/code/modules/mob/living/silicon/pai/life.dm b/code/modules/mob/living/silicon/pai/life.dm
index 374cfd5acc4..d818d6edf29 100644
--- a/code/modules/mob/living/silicon/pai/life.dm
+++ b/code/modules/mob/living/silicon/pai/life.dm
@@ -9,6 +9,7 @@
for (var/mob/M in viewers(T))
M.show_message("The data cable rapidly retracts back into its spool.", 3, "You hear a click and the sound of wire spooling rapidly.", 2)
qdel(src.cable)
+ src.cable = null
handle_regular_hud_updates()
diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm
index e77f219edc4..504350a198a 100644
--- a/code/modules/projectiles/guns/projectile/pistol.dm
+++ b/code/modules/projectiles/guns/projectile/pistol.dm
@@ -10,11 +10,7 @@
fire_sound = 'sound/weapons/semiauto.ogg'
load_method = MAGAZINE
-/obj/item/weapon/gun/projectile/colt/detective
- desc = "A Martian recreation of an old Terran pistol. Uses .45 rounds."
- magazine_type = /obj/item/ammo_magazine/m45/rubber
-
-/obj/item/weapon/gun/projectile/colt/detective/update_icon()
+/obj/item/weapon/gun/projectile/colt/update_icon()
if(ammo_magazine)
if(unique_reskin)
icon_state = unique_reskin
@@ -26,6 +22,10 @@
else
icon_state = "[initial(icon_state)]-e"
+/obj/item/weapon/gun/projectile/colt/detective
+ desc = "A Martian recreation of an old Terran pistol. Uses .45 rounds."
+ magazine_type = /obj/item/ammo_magazine/m45/rubber
+
/obj/item/weapon/gun/projectile/colt/detective/verb/rename_gun()
set name = "Name Gun"
set category = "Object"
diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm
index 2588da84540..5af7cdad1da 100644
--- a/code/modules/research/designs.dm
+++ b/code/modules/research/designs.dm
@@ -733,13 +733,31 @@ other types of metals and chemistry for reagents).
sort_string = "VASBA"
/datum/design/item/experimental_welder
- name = "Expiermental Welding Tool"
+ name = "Experimental welding tool"
desc = "A welding tool that generate fuel for itself."
id = "expwelder"
req_tech = list(TECH_ENGINEERING = 4, TECH_PHORON = 3, TECH_MATERIAL = 4)
materials = list(DEFAULT_WALL_MATERIAL = 70, "glass" = 120, "phoron" = 100)
build_path = /obj/item/weapon/weldingtool/experimental
sort_string = "VASCA"
+
+/datum/design/item/hand_drill
+ name = "Hand drill"
+ desc = "A simple powered hand drill."
+ id = "handdrill"
+ req_tech = list(TECH_ENGINEERING = 3, TECH_MATERIAL = 2)
+ materials = list(DEFAULT_WALL_MATERIAL = 300, "silver" = 100)
+ build_path = /obj/item/weapon/screwdriver/power
+ sort_string = "VASDA"
+
+/datum/design/item/jaws_life
+ name = "Jaws of life"
+ desc = "A set of jaws of life, compressed through the magic of science."
+ id = "jawslife"
+ req_tech = list(TECH_ENGINEERING = 3, TECH_MATERIAL = 2)
+ materials = list(DEFAULT_WALL_MATERIAL = 300, "silver" = 100)
+ build_path = /obj/item/weapon/crowbar/power
+ sort_string = "VASEA"
/*
CIRCUITS BELOW
*/
diff --git a/html/changelogs/Nalarac - Power Tools.yml b/html/changelogs/Nalarac - Power Tools.yml
new file mode 100644
index 00000000000..197c6b0910b
--- /dev/null
+++ b/html/changelogs/Nalarac - Power Tools.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: Nalarac
+
+# 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 hand drill and jaws of life to the protolathe"
+ - tweak: "Syndicate toolbox now comes with power tools"
\ No newline at end of file
diff --git a/icons/mob/screen1_alien.dmi b/icons/mob/screen1_alien.dmi
index 6e9b9eccf8b..76bf088e8d8 100644
Binary files a/icons/mob/screen1_alien.dmi and b/icons/mob/screen1_alien.dmi differ