48 lines
1.5 KiB
Plaintext
48 lines
1.5 KiB
Plaintext
diff a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm (rejected hunks)
|
|
@@ -64,25 +64,26 @@
|
|
..()
|
|
|
|
/obj/machinery/computer/holodeck/Initialize(mapload)
|
|
- . = mapload //late-initialize, area_copy need turfs to have air
|
|
- if(!mapload)
|
|
- ..()
|
|
- program_cache = list()
|
|
- emag_programs = list()
|
|
- for(var/typekey in subtypesof(program_type))
|
|
- var/area/holodeck/A = locate(typekey)
|
|
- if(!A || A == offline_program) continue
|
|
- if(A.contents.len == 0) continue // not loaded
|
|
- if(A.restricted)
|
|
- emag_programs += A
|
|
- else
|
|
- program_cache += A
|
|
- if(typekey == init_program)
|
|
- load_program(A,force=1)
|
|
- if(random_program && program_cache.len && init_program == null)
|
|
- load_program(pick(program_cache),force=1)
|
|
- else if(!program)
|
|
- load_program(offline_program)
|
|
+ ..()
|
|
+ return INITIALIZE_HINT_LATELOAD
|
|
+
|
|
+/obj/machinery/computer/holodeck/LateInitialize()
|
|
+ program_cache = list()
|
|
+ emag_programs = list()
|
|
+ for(var/typekey in subtypesof(program_type))
|
|
+ var/area/holodeck/A = locate(typekey)
|
|
+ if(!A || A == offline_program) continue
|
|
+ if(A.contents.len == 0) continue // not loaded
|
|
+ if(A.restricted)
|
|
+ emag_programs += A
|
|
+ else
|
|
+ program_cache += A
|
|
+ if(typekey == init_program)
|
|
+ load_program(A,force=1)
|
|
+ if(random_program && program_cache.len && init_program == null)
|
|
+ load_program(pick(program_cache),force=1)
|
|
+ else if(!program)
|
|
+ load_program(offline_program)
|
|
|
|
/obj/machinery/computer/holodeck/power_change()
|
|
..()
|