diff --git a/code/modules/research/artifact_analysis.dm b/code/modules/research/artifact_analysis.dm
index 16b4c0c1568..fea65bbb6d7 100644
--- a/code/modules/research/artifact_analysis.dm
+++ b/code/modules/research/artifact_analysis.dm
@@ -61,6 +61,8 @@
owned_pad = locate() in orange(1, src)
/obj/machinery/artifact_analyser/attack_hand(var/mob/user as mob)
+ if(stat & (NOPOWER|BROKEN))
+ return
user.machine = src
var/dat = "Artifact Analyser
"
dat += "
"
@@ -87,6 +89,10 @@
onclose(user, "artanalyser")
/obj/machinery/artifact_analyser/process()
+ if(stat & (NOPOWER|BROKEN))
+ return
+ use_power(350)
+ //
if(!owned_pad)
for(var/obj/machinery/analyser_pad/pad in range(1))
owned_pad = pad
@@ -229,6 +235,7 @@
time *= 10
var/message = "[src] states, \"Commencing analysis.\""
src.visible_message(message, message)
+ use_power(500)
spawn(time)
src.working = 0
icon_state = "analyser"
@@ -239,6 +246,7 @@
scan_num++
message = "[src] states, \"Analysis complete.\""
src.visible_message(message, message)
+ use_power(500)
else if (findarti > 1)
var/message = "[src] states, \"Cannot analyse. Too many artifacts on pad.\""
src.visible_message(message, message)
@@ -267,6 +275,7 @@
CA.effecttype = aeffect1 + " ([accuE1]%)"
CA.effectmode = aeffect2 + " ([accuE2]%)"
DB.catalogued_artifacts.Add(CA)
+ use_power(100)
if(href_list["print"])
var/r = "Artifact Analysis Report (Scan #[scan_num])
"
@@ -280,6 +289,7 @@
P.info = r
for(var/mob/O in hearers(src, null))
O.show_message("\icon[src] \blue The [src.name] prints a sheet of paper", 3)
+ use_power(10)
if(href_list["close"])
usr << browse(null, "window=artanalyser")
diff --git a/code/modules/research/artifact_harvester.dm b/code/modules/research/artifact_harvester.dm
index 84839dfb768..16c0a4e6ce5 100644
--- a/code/modules/research/artifact_harvester.dm
+++ b/code/modules/research/artifact_harvester.dm
@@ -36,8 +36,12 @@
interact(user)
/obj/machinery/artifact_harvester/process()
+ if(stat & (NOPOWER|BROKEN))
+ return
+ use_power(350)
if(harvesting)
+ use_power(250)
inserted_battery.stored_charge += 10
if(inserted_battery.stored_charge >= inserted_battery.capacity)
inserted_battery.stored_charge = inserted_battery.capacity
@@ -49,6 +53,8 @@
return
/obj/machinery/artifact_harvester/proc/interact(var/mob/user as mob)
+ if(stat & (NOPOWER|BROKEN))
+ return
user.machine = src
var/dat = "Artifact Power Harvester
"
dat += "
"
@@ -140,6 +146,7 @@
src.inserted_battery = null
if (href_list["drainbattery"])
+ use_power(100)
src.inserted_battery.battery_effect.artifact_id = ""
src.inserted_battery.stored_charge = 0
var/message = "[src] states, \"Battery drained of all charge.\""