diff --git a/code/game/objects/devices/paicard.dm b/code/game/objects/devices/paicard.dm index 6938ff051fd..2ae71b91854 100644 --- a/code/game/objects/devices/paicard.dm +++ b/code/game/objects/devices/paicard.dm @@ -70,7 +70,6 @@ M << "

Your mental faculties leave you.

" M << "
oblivion...
" M.death(0) - del(M) src.pai = null if(href_list["wires"]) var/t1 = text2num(href_list["wires"]) diff --git a/code/modules/mob/living/silicon/pai/death.dm b/code/modules/mob/living/silicon/pai/death.dm index a3ff47bb05f..90adfd82499 100644 --- a/code/modules/mob/living/silicon/pai/death.dm +++ b/code/modules/mob/living/silicon/pai/death.dm @@ -13,9 +13,6 @@ //var/tod = time2text(world.realtime,"hh:mm:ss") //weasellos time of death patch //mind.store_memory("Time of death: [tod]", 0) - if(key) - spawn(50) - src.ghost() for(var/mob/M in world) if ((M.client && !( M.stat ))) cancel = 1 @@ -26,4 +23,7 @@ log_game("Rebooting because of no live players") world.Reboot() return - return ..(gibbed) \ No newline at end of file + if(key) + spawn(50) + src.ghostize(1) + del(src) \ No newline at end of file diff --git a/code/modules/mob/living/silicon/pai/recruit.dm b/code/modules/mob/living/silicon/pai/recruit.dm index 383748404ed..1840f22b0c6 100644 --- a/code/modules/mob/living/silicon/pai/recruit.dm +++ b/code/modules/mob/living/silicon/pai/recruit.dm @@ -21,7 +21,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates Topic(href, href_list[]) if(href_list["download"]) - var/datum/paiCandidate/candidate = locate(href_list["candidate"]) //pai_candidates.Find(href_list["candidate"]) + var/datum/paiCandidate/candidate = locate(href_list["candidate"]) var/obj/item/device/paicard/card = locate(href_list["device"]) if(card.pai) return @@ -35,7 +35,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates pai_candidates.Remove(candidate) usr << browse(null, "window=findPai") if(href_list["new"]) - var/datum/paiCandidate/candidate = locate(href_list["candidate"]) //pai_candidates.Find(href_list["candidate"]) + var/datum/paiCandidate/candidate = locate(href_list["candidate"]) var/option = href_list["option"] switch(option) if("name") @@ -162,8 +162,10 @@ var/datum/paiController/paiController // Global handler for pAI candidates proc/requestRecruits() for(var/mob/dead/observer/O in world) if(asked.Find(O.key)) - if(asked[O] < world.time + askDelay) + if(world.time < asked[O.key] + askDelay) continue + else + asked.Remove(O.key) if(O.client) var/hasSubmitted = 0 for(var/datum/paiCandidate/c in paiController.pai_candidates) @@ -177,4 +179,4 @@ var/datum/paiController/paiController // Global handler for pAI candidates asked[C.key] = world.time var/response = input(C, "Someone is requesting a pAI personality. Would you like to play as a personal AI?", "pAI Request") in list ("Yes", "No") if(response == "Yes") - recruitWindow(C.mob) \ No newline at end of file + recruitWindow(C.mob)