diff --git a/code/game/machinery/transformer.dm b/code/game/machinery/transformer.dm
index 6912568498a..8f2cf8fe15d 100644
--- a/code/game/machinery/transformer.dm
+++ b/code/game/machinery/transformer.dm
@@ -34,7 +34,7 @@
var/turf/west = get_step(src, WEST)
if(istype(west, /turf/simulated/floor))
new /obj/machinery/conveyor(west, WEST, 1)
-
+
/obj/machinery/transformer/CollidedWith(var/atom/movable/AM)
// HasEntered didn't like people lying down.
if(ishuman(AM))
@@ -56,15 +56,17 @@
use_power(6000) // Use a lot of power.
visible_message("The machine makes a series of loud sounds as it starts to replace [H]'s organs and limbs with robotic parts!")
H <<"You feel a horrible pain as the machine you entered starts to rip you apart and replace your limbs and organs!"
- sleep(30)
- if(H.loc == src.loc)
- H <<" You lose consciousness for a brief moment before waking up with a whole new body..."
- H.Robotize()
- playsound(src.loc, 'sound/machines/ping.ogg', 50, 0)
- canuse = 0
- sleep(120) // cooldown
- canuse = 1
+ H.Robotize()
+ H <<" You lose consciousness for a brief moment before waking up with a whole new body..."
+ playsound(src.loc, 'sound/machines/ping.ogg', 50, 0)
+ canuse = FALSE
+ addtimer(CALLBACK(src, .proc/rearm), 120 SECONDS)
else
playsound(src.loc, 'sound/machines/buzz-sigh.ogg', 50, 0)
visible_message("The machine displays an error message reading it is still making the required parts.")
return
+
+/obj/machinery/transformer/proc/rearm()
+ src.visible_message("\The [src] pings!")
+ playsound(src.loc, 'sound/machines/ping.ogg', 50, 0)
+ canuse = TRUE
diff --git a/html/changelogs/alberyk-autoborger.yml b/html/changelogs/alberyk-autoborger.yml
new file mode 100644
index 00000000000..39291f98838
--- /dev/null
+++ b/html/changelogs/alberyk-autoborger.yml
@@ -0,0 +1,6 @@
+author: Alberyk
+
+delete-after: True
+
+changes:
+ - bugfix: "The Automatic Robotic Factory 5000 should now work properly."