diff --git a/code/game/machinery/navbeacon.dm b/code/game/machinery/navbeacon.dm index 5b6cfb5e73d..3d980e769e7 100644 --- a/code/game/machinery/navbeacon.dm +++ b/code/game/machinery/navbeacon.dm @@ -26,11 +26,13 @@ var/turf/T = loc hide(T.intact) - if(codes["patrol"]) + if(!codes || !codes.len) + log_debug("Empty codes datum at ([x],[y],[z])") + if("patrol" in codes) if(!navbeacons["[z]"]) navbeacons["[z]"] = list() navbeacons["[z]"] += src //Register with the patrol list! - if(codes["delivery"]) + if("delivery" in codes) deliverybeacons += src deliverybeacontags += location @@ -39,6 +41,15 @@ deliverybeacons -= src return ..() +/obj/machinery/navbeacon/serialize() + var/list/data = ..() + data["codes"] = codes + return data + +/obj/machinery/navbeacon/deserialize(list/data) + codes = data["codes"] + ..() + // set the transponder codes assoc list from codes_txt /obj/machinery/navbeacon/proc/set_codes() if(!codes_txt) @@ -201,4 +212,4 @@ Transponder Codes: