mirror of
https://github.com/Yawn-Wider/YWPolarisVore.git
synced 2026-08-29 16:10:33 +01:00
Allow multiple SStranscore databases (#10450)
* Allow multiple SStranscore databases * Add key to backup implanter too * Key passing tweak * Fix issue Leshana spotted * Add optimization Leshana spotted * Fixxy more multitranscore bugs
This commit is contained in:
@@ -32,12 +32,8 @@ var/global/list/prevent_respawns = list()
|
||||
qdel(O)
|
||||
|
||||
//Resleeving cleanup
|
||||
if(src.mind.name in SStranscore.backed_up)
|
||||
var/datum/transhuman/mind_record/MR = SStranscore.backed_up[src.mind.name]
|
||||
SStranscore.stop_backup(MR)
|
||||
if(src.mind.name in SStranscore.body_scans) //This uses mind names to avoid people cryo'ing a printed body to delete body scans.
|
||||
var/datum/transhuman/body_record/BR = SStranscore.body_scans[src.mind.name]
|
||||
SStranscore.remove_body(BR)
|
||||
if(mind)
|
||||
SStranscore.leave_round(src)
|
||||
|
||||
//Job slot cleanup
|
||||
var/job = src.mind.assigned_role
|
||||
|
||||
@@ -62,18 +62,22 @@
|
||||
set name = "Notify Transcore"
|
||||
set desc = "If your past-due backup notification was missed or ignored, you can use this to send a new one."
|
||||
|
||||
if(src.mind && (src.mind.name in SStranscore.backed_up))
|
||||
var/datum/transhuman/mind_record/record = SStranscore.backed_up[src.mind.name]
|
||||
if(!mind)
|
||||
to_chat(src,"<span class='warning'>Your ghost is missing game values that allow this functionality, sorry.</span>")
|
||||
return
|
||||
var/datum/transcore_db/db = SStranscore.db_by_mind_name(mind.name)
|
||||
if(db)
|
||||
var/datum/transhuman/mind_record/record = db.backed_up[src.mind.name]
|
||||
if(!(record.dead_state == MR_DEAD))
|
||||
to_chat(src, "<span class='warning'>Your backup is not past-due yet.</span>")
|
||||
else if((world.time - record.last_notification) < 10 MINUTES)
|
||||
to_chat(src, "<span class='warning'>Too little time has passed since your last notification.</span>")
|
||||
else
|
||||
SStranscore.notify(record.mindname, TRUE)
|
||||
db.notify(record.mindname, TRUE)
|
||||
record.last_notification = world.time
|
||||
to_chat(src, "<span class='notice'>New notification has been sent.</span>")
|
||||
else
|
||||
to_chat(src, "<span class='warning'>No mind record found!</span>")
|
||||
to_chat(src,"<span class='warning'>No backup record could be found, sorry.</span>")
|
||||
|
||||
/mob/observer/dead/verb/findghostpod() //Moves the ghost instead of just changing the ghosts's eye -Nodrak
|
||||
set category = "Ghost"
|
||||
|
||||
@@ -38,14 +38,14 @@
|
||||
|
||||
for(var/obj/item/organ/external/E in organs)
|
||||
for(var/obj/item/weapon/implant/I in E.implants)
|
||||
if(I.implanted)
|
||||
if(istype(I,/obj/item/weapon/implant/backup))
|
||||
if(!mind)
|
||||
holder.icon_state = "hud_backup_nomind"
|
||||
else if(!(mind.name in SStranscore.body_scans))
|
||||
holder.icon_state = "hud_backup_nobody"
|
||||
else
|
||||
holder.icon_state = "hud_backup_norm"
|
||||
if(I.implanted && istype(I,/obj/item/weapon/implant/backup))
|
||||
var/obj/item/weapon/implant/backup/B = I
|
||||
if(!mind)
|
||||
holder.icon_state = "hud_backup_nomind"
|
||||
else if(!(mind.name in B.our_db.body_scans))
|
||||
holder.icon_state = "hud_backup_nobody"
|
||||
else
|
||||
holder.icon_state = "hud_backup_norm"
|
||||
|
||||
apply_hud(BACKUP_HUD, holder)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user