We won't regenerate the list for Manifests every tick while viewing the manifest, instead we have a global variable for it PDA_Manifest that we Cut() if there is a change to the manifest then when the next player goes to view the manifest on their PDA it will recreate the list that one time.
Some sections of the PDA will no longer auto-refresh every tick because...well that's dumb.
Modes that will no longer autoupdate at all: Viewing medical/sec records, viewing notes (will update when you change them of course), and the station alert menu.
Modes that will only autoupdate every 5 ticks: APC list (Because it's a huge fuck off list), the manifest, mulebots and secbots screens, supply requests/orders, and janitor supply locator)
Some other things that I just can't remember right now.
Conflicts:
code/defines/obj.dm
runtime error: Cannot read null.len
proc name: scan atom (/obj/item/device/depth_scanner/proc/scan_atom)
source file: tools_depthscanner.dm,31
usr: Some Guy (/mob/living/carbon/human)
src: the depth analysis scanner (/obj/item/device/depth_scanner)
call stack:
the depth analysis scanner (/obj/item/device/depth_scanner): scan atom(Some Guy (/mob/living/carbon/human), Rock (155,169,5) (/turf/simulated/mineral))
Rock (155,169,5) (/turf/simulated/mineral): attackby(the depth analysis scanner (/obj/item/device/depth_scanner), Some Guy (/mob/living/carbon/human))
Some Guy (/mob/living/carbon/human): ClickOn(Rock (155,169,5) (/turf/simulated/mineral), "icon-x=23;icon-y=13;left=1;scr...")
Rock (155,169,5) (/turf/simulated/mineral): Click(Rock (155,169,5) (/turf/simulated/mineral), "mapwindow.map", "icon-x=23;icon-y=13;left=1;scr...")
My VERY FIRST PR, I used it to make ghost chat be bold, instead of using viewers() to figure out
what ghosts could see the mob, I used get_mob_in_view() which sounded pretty descriptive.
Unfortunately for me it was one of the most CPU intensive ways of determining who could view the speaker for this.
So yeah, removing the second get_mobs_in_view and replacing it with viewers()
Yes this code has been in since Oct/Nov time frame :(