From d67f81c9ff710452e2a35cec5c271028abdf67d4 Mon Sep 17 00:00:00 2001 From: Geeves Date: Mon, 1 Mar 2021 17:41:41 +0200 Subject: [PATCH] Spark Bulbs (#11241) --- code/modules/power/lights/fixtures.dm | 9 +++++++++ html/changelogs/geeves-spark_bulbs.yml | 6 ++++++ 2 files changed, 15 insertions(+) create mode 100644 html/changelogs/geeves-spark_bulbs.yml diff --git a/code/modules/power/lights/fixtures.dm b/code/modules/power/lights/fixtures.dm index 0386d3f13f7..0cf70217b15 100644 --- a/code/modules/power/lights/fixtures.dm +++ b/code/modules/power/lights/fixtures.dm @@ -42,6 +42,8 @@ var/emergency_mode = FALSE // if true, the light is in emergency mode. var/no_emergency = FALSE // if true, this light cannot enter emergency mode. + var/next_spark = 0 + var/bulb_is_noisy = TRUE var/previous_stat @@ -222,12 +224,19 @@ active_power_usage = ((light_range * light_power) * 10) +/obj/machinery/light/proc/broken_sparks() + if(world.time > next_spark && has_power()) + spark(src, 3, alldirs) + next_spark = world.time + 1 MINUTE + (rand(-15, 15) SECONDS) + // ehh /obj/machinery/light/machinery_process() if (cell && cell.charge != cell.maxcharge && has_power()) cell.charge = min(cell.maxcharge, cell.charge + 0.2) if (emergency_mode && !use_emergency_power(LIGHT_EMERGENCY_POWER_USE)) update(FALSE) + if(status == LIGHT_BROKEN) + broken_sparks() /obj/machinery/light/proc/has_emergency_power(pwr = LIGHT_EMERGENCY_POWER_USE) if (no_emergency | !cell) diff --git a/html/changelogs/geeves-spark_bulbs.yml b/html/changelogs/geeves-spark_bulbs.yml new file mode 100644 index 00000000000..c2bf93c8827 --- /dev/null +++ b/html/changelogs/geeves-spark_bulbs.yml @@ -0,0 +1,6 @@ +author: Geeves + +delete-after: True + +changes: + - rscadd: "Broken lights that have power now occasionally spark." \ No newline at end of file