diff --git a/code/modules/events/aurora_aquilae.dm b/code/modules/events/aurora_aquilae.dm index f85cb8a3..c08ef6dd 100644 --- a/code/modules/events/aurora_aquilae.dm +++ b/code/modules/events/aurora_aquilae.dm @@ -16,12 +16,17 @@ endWhen = 100 var/list/aurora_colors = list("#ffc8bc", "#ed927f", "#d5745f", "#bf3a1d", "#c71414", "#FF3131", "#ee0808", "#ff0000") var/aurora_progress = 0 //this cycles from 1 to 8, slowly grading towards a bright red + var/list/area/areasToFlicker = list(/area/hallway/primary, + /area/security, + /area/science) /datum/round_event/aurora_aquilae/announce() priority_announce("[station_name()]: A ·#HARMLESS#· cloud of ·|$% GLORY AND GUTS¬€#· ions is approaching your ·|%$ station, and will exhaust their energy battering the hull. Kinaris Command has approved a short break for all employees to relax and observe this very rare event. During this time, starlight will be bright but %%%BRUTAL·$ª, shifting between %$$%!ªTHE COMPLETE AND UTTER DESTRUCTION OF THE SENSES$ and %%THE ASHES OF THE GREAT AL-SHAIN%. Any staff who would like to view the %%PRESENCE OF A KING%$ for themselves may proceed to the nearest area with viewing ports to open space.", sound = 'sound/misc/interference.ogg', sender_override = "Kin]·|Aari$s Meteo%&rology DivD··isio#n") - + for(var/area/A in areasToFlicker) + for(var/obj/machinery/light/L in A) + L.flicker(30) /datum/round_event/aurora_aquilae/start() for(var/area in GLOB.sortedAreas) var/area/A = area @@ -49,52 +54,53 @@ sleep (100) new /datum/hallucination/battle(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) sleep(2.5) - new /datum/hallucination/stray_bullet(H) + new /datum/hallucination/stray_pistol_bullet(H) if(activeFor == 60) for(var/mob/living/carbon/human/H in GLOB.alive_mob_list) new /datum/hallucination/fire(H) if(activeFor == 60) - for(var/area/A in GLOB.sortedAreas) - for(var/obj/machinery/light/L in A) - L.flicker(30) + for(var/obj/O in areasToFlicker) + if(istype(O, /obj/machinery/power/apc)) + var/obj/machinery/power/apc/temp = O + temp.overload_lighting() /datum/round_event/aurora_aquilae/end() for(var/area in GLOB.sortedAreas) diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index bb538771..d47543e0 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -1289,4 +1289,25 @@ GLOBAL_LIST_INIT(hallucination_list, list( H.hal_target = target H.preparePixelProjectile(target, start) H.fire() - qdel(src) \ No newline at end of file + qdel(src) + +/datum/hallucination/stray_pistol_bullet //specifically for aurora_aquilae.dm event + +/datum/hallucination/stray_pistol_bullet/New(mob/living/carbon/C, forced = TRUE) + set waitfor = FALSE + ..() + var/list/turf/startlocs = list() + for(var/turf/open/T in view(world.view+1,target)-view(world.view,target)) + startlocs += T + if(!startlocs.len) + qdel(src) + return + var/turf/start = pick(startlocs) + var/proj_type = /obj/item/projectile/hallucination/bullet + feedback_details += "Type: [proj_type]" + var/obj/item/projectile/hallucination/H = new proj_type(start) + target.playsound_local(start, H.hal_fire_sound, 60, 1) + H.hal_target = target + H.preparePixelProjectile(target, start) + H.fire() + qdel(src)