Areas and station areas work (#20195)

Refactored sorting.
Added test to verify all horizon areas (outside exceptions) are marked
as station areas.
Added test to verify shuttle areas are not marked as station areas.
Refactored how the area sorting var is made and used.
Added a global list of all areas.
This commit is contained in:
Fluffy
2024-11-27 14:13:44 +01:00
committed by GitHub
parent 916df7c9a4
commit 389466360e
44 changed files with 482 additions and 228 deletions
@@ -25,6 +25,6 @@
set_switches(null)
/datum/admin_secret_item/fun_secret/light_switches/proc/set_switches(var/new_state)
for(var/area/A in GLOB.all_areas)
for(var/area/A in get_sorted_areas())
if(A.lightswitch != new_state)
A.set_lightswitch(new_state)
+2 -2
View File
@@ -4,7 +4,7 @@
/mob/abstract/ghost/on_mob_jump()
QDEL_NULL(orbiting)
/client/proc/Jump(var/area/A in GLOB.all_areas)
/client/proc/Jump(var/area/A in get_sorted_areas())
set name = "Jump to Area"
set desc = "Area to jump to"
set category = "Admin"
@@ -263,7 +263,7 @@
set name = "Send Mob"
if(!check_rights(R_ADMIN|R_MOD|R_DEBUG))
return
var/area/A = input(usr, "Pick an area.", "Pick an area") in GLOB.all_areas
var/area/A = input(usr, "Pick an area.", "Pick an area") in get_sorted_areas()
if(A)
if(GLOB.config.allow_admin_jump)
M.on_mob_jump()