diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index 8b0f0e2c08..9d14bb3d10 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -424,6 +424,16 @@ items -= announce // or the autosay radio. for(var/obj/item/W in items) + //VOREStation Addition Start + if(istype(W, /obj/item/device/pda)) + var/obj/item/device/pda/found_pda = W + found_pda.delete_id = TRUE + else + var/list/pdas_found = W.search_contents_for(/obj/item/device/pda) + if(pdas_found.len) + for(var/obj/item/device/pda/found_pda in pdas_found) + found_pda.delete_id = TRUE + //VOREStation Addition End var/preserve = 0 diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 771684775f..8fc77ffb65 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -71,7 +71,7 @@ var/global/list/obj/item/device/pda/PDAs = list() /obj/item/device/pda/CtrlClick() if(issilicon(usr)) return - + if(can_use(usr)) remove_pen() return @@ -1458,7 +1458,7 @@ var/global/list/obj/item/device/pda/PDAs = list() /obj/item/device/pda/Destroy() PDAs -= src - if (src.id && prob(100)) //IDs are kept in 90% of the cases //VOREStation Edit - 100% of the cases + if (src.id && prob(100) && !delete_id) //IDs are kept in 90% of the cases //VOREStation Edit - 100% of the cases, excpet when specified otherwise src.id.forceMove(get_turf(src.loc)) else QDEL_NULL(src.id) diff --git a/code/game/objects/items/devices/PDA/PDA_vr.dm b/code/game/objects/items/devices/PDA/PDA_vr.dm index 20558c965c..6a6da399eb 100644 --- a/code/game/objects/items/devices/PDA/PDA_vr.dm +++ b/code/game/objects/items/devices/PDA/PDA_vr.dm @@ -1,3 +1,6 @@ +/obj/item/device/pda + var/delete_id = FALSE //Guaranteed deletion of ID upon deletion of PDA + /obj/item/device/pda/centcom default_cartridge = /obj/item/weapon/cartridge/captain icon_state = "pda-h"