diff --git a/code/modules/research/artifact_analysis.dm b/code/modules/research/artifact_analysis.dm index 3089e9cd65..899a7dc494 100644 --- a/code/modules/research/artifact_analysis.dm +++ b/code/modules/research/artifact_analysis.dm @@ -209,6 +209,7 @@ cur_artifact.name = "alien artifact ([cur_artifact.display_id])" cur_artifact.desc = "A large alien device. It has a small tag near the bottom that reads \"[cur_artifact.display_id]\"." cur_id = cur_artifact.display_id + cur_artifact.my_effect.artifact_id = cur_artifact.display_id /obj/machinery/artifact_analyser/Topic(href, href_list) diff --git a/code/modules/research/artifact_effect.dm b/code/modules/research/artifact_effect.dm index 19291af9b0..5a084b4413 100644 --- a/code/modules/research/artifact_effect.dm +++ b/code/modules/research/artifact_effect.dm @@ -293,11 +293,11 @@ if(istype(M:wear_suit,/obj/item/clothing/suit/bio_suit/anomaly) && istype(M:head,/obj/item/clothing/head/bio_hood/anomaly)) continue M << "\blue A wave of energy invigorates you." - M.adjustBruteLoss(5) - M.adjustFireLoss(5) - M.adjustToxLoss(5) - M.adjustOxyLoss(5) - M.adjustBrainLoss(5) + M.adjustBruteLoss(-5) + M.adjustFireLoss(-5) + M.adjustToxLoss(-5) + M.adjustOxyLoss(-5) + M.adjustBrainLoss(-5) M.updatehealth() return 1 if("injure") diff --git a/code/modules/research/artifact_harvester.dm b/code/modules/research/artifact_harvester.dm index bfcacc913c..c2432b3346 100644 --- a/code/modules/research/artifact_harvester.dm +++ b/code/modules/research/artifact_harvester.dm @@ -66,7 +66,7 @@ else if(inserted_battery) dat += "[inserted_battery.name] inserted, charge level: [inserted_battery.stored_charge]/[inserted_battery.capacity] ([(inserted_battery.stored_charge/inserted_battery.capacity)*100]%)
" - dat += "Energy signature ID:[inserted_battery.battery_effect.artifact_id]
" + dat += "Energy signature ID:[inserted_battery.battery_effect.artifact_id == "" ? "???" : "[inserted_battery.battery_effect.artifact_id]"]
" dat += "Eject battery
" dat += "Drain battery of all charge
" dat += "Begin harvesting
" @@ -94,7 +94,7 @@ var/mundane = 0 for(var/obj/O in get_turf(owned_pad)) - if(!istype(O, /obj/machinery/artifact)) + if(!istype(O, /obj/machinery/artifact) && !istype(O, /obj/machinery/analyser_pad)) mundane++ break for(var/mob/O in get_turf(owned_pad)) diff --git a/code/modules/research/artifact_synthetic.dm b/code/modules/research/artifact_synthetic.dm index 81f1183664..fd6143a795 100644 --- a/code/modules/research/artifact_synthetic.dm +++ b/code/modules/research/artifact_synthetic.dm @@ -44,9 +44,9 @@ if(!inserted_battery) dat += "Please insert battery
" else - dat += "[inserted_battery] inserted, anomaly ID: [inserted_battery.battery_effect.artifact_id]
" + dat += "[inserted_battery] inserted, anomaly ID: [inserted_battery.battery_effect.artifact_id == "" ? "???" : "[inserted_battery.battery_effect.artifact_id]"]
" dat += "Total Power: [inserted_battery.stored_charge]/[inserted_battery.capacity]

" - dat += "Timed activation: -- - [time >= 1000 ? "[time/10]" : time >= 100 ? " [time/10]" : " [time/10]" ] + ++
" + dat += "Timed activation: -- - [time >= 1000 ? "[time/10]" : time >= 100 ? " [time/10]" : " [time/10]" ] + ++
" if(cooldown && !activated) dat += "Cooldown in progress.
" else if(activated) @@ -87,13 +87,13 @@ /obj/item/weapon/anodevice/proc/pulse() if(activated) time -= 10 + stored_charge -= 10 + rand(-1,1) cooldown += 10 if(time <= 0) time = 0 activated = 0 var/turf/T = get_turf(src) T.visible_message("\icon[src]\blue The utiliser device buzzes.", "\icon[src]\blue You hear something buzz.") - updateDialog() else inserted_battery.battery_effect.DoEffect(src) else if(cooldown > 0) @@ -102,15 +102,36 @@ cooldown = 0 var/turf/T = get_turf(src) T.visible_message("\icon[src]\blue The utiliser device chimes.", "\icon[src]\blue You hear something chime.") - updateDialog() spawn(10) pulse() /obj/item/weapon/anodevice/Topic(href, href_list) + + if(href_list["neg_changetime_max"]) + time += -100 + if(time > inserted_battery.capacity) + time = inserted_battery.capacity + else if (time < 0) + time = 0 + if(href_list["neg_changetime"]) + time += -10 + if(time > inserted_battery.capacity) + time = inserted_battery.capacity + else if (time < 0) + time = 0 if(href_list["changetime"]) - var/mod = href_list["changetime"] - time += num2text(mod) + time += 10 + if(time > inserted_battery.capacity) + time = inserted_battery.capacity + else if (time < 0) + time = 0 + if(href_list["changetime_max"]) + time += 100 + if(time > inserted_battery.capacity) + time = inserted_battery.capacity + else if (time < 0) + time = 0 if(href_list["stoptimer"]) activated = 0 @@ -127,4 +148,5 @@ usr << browse(null, "window=anodevice") usr.machine = null - updateDialog() + if(usr) + src.interact(usr) diff --git a/config/admins.txt b/config/admins.txt index 4946d49aba..c0db8b7afe 100644 --- a/config/admins.txt +++ b/config/admins.txt @@ -2,6 +2,7 @@ abi79 - Game Master arcalane - Game Admin bobbehluvspropane - Game Admin cacophony - Retired Admin +caelaislinn - Game Master cajoes - Game Admin cib - Game Master compactninja - Game Master