Changed to list players, and have individual cryo buttons

This commit is contained in:
Kyep
2017-06-12 00:20:18 -07:00
parent 763c9fb84b
commit 5c2aa2208e
5 changed files with 44 additions and 42 deletions
+3
View File
@@ -105,6 +105,9 @@ var/global/nologevent = 0
<A href='?_src_=holder;Bless=[M.UID()]'>Bless</A> |
<A href='?_src_=holder;Smite=[M.UID()]'>Smite</A>
"}
if(isLivingSSD(M))
if(!istype(M.loc, /obj/machinery/cryopod))
body += {" | <A href='?_src_=holder;cryossd=[M.UID()]'>Cryo</A> "}
if(M.client)
if(!istype(M, /mob/new_player))
+1 -1
View File
@@ -79,7 +79,7 @@ var/list/admin_verbs_admin = list(
/client/proc/reset_all_tcs, /*resets all telecomms scripts*/
/client/proc/toggle_mentor_chat,
/client/proc/toggle_advanced_interaction, /*toggle admin ability to interact with not only machines, but also atoms such as buttons and doors*/
/client/proc/cryo_ssds,
/client/proc/list_ssds,
)
var/list/admin_verbs_ban = list(
/client/proc/unban_panel,
+14
View File
@@ -1944,6 +1944,20 @@
if(logmsg)
log_admin("[key_name(owner)] answered [key_name(M)]'s prayer with a smiting: [logmsg]")
message_admins("[key_name_admin(owner)] answered [key_name_admin(M)]'s prayer with a smiting: [logmsg]")
else if(href_list["cryossd"])
if(!check_rights(R_ADMIN))
return
var/mob/living/carbon/human/H = locateUID(href_list["cryossd"])
if(!istype(H))
to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human")
return
if(!isLivingSSD(H))
to_chat(usr, "This can only be used on living, SSD players.")
return
var/success = cryo_ssd(H)
if(success)
log_admin("[key_name(usr)] sent [H.job] [H] to cryo.")
message_admins("[key_name_admin(usr)] sent [H.job] [H] to cryo.")
else if(href_list["FaxReplyTemplate"])
if(!check_rights(R_ADMIN))
return
+11 -41
View File
@@ -882,57 +882,27 @@ Traitors and the like can also be revived with the previous role mostly intact.
message_admins("[key_name_admin(usr)] blanked all telecomms scripts.")
feedback_add_details("admin_verb","RAT") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/client/proc/cryo_ssds()
/client/proc/list_ssds()
set category = "Admin"
set name = "Cryo SSDs"
set desc = "Sends SSD players to cryo"
set name = "List SSDs"
set desc = "Lists SSD players"
if(!check_rights(R_ADMIN))
return
var/confirm = alert(src, "You sure you want to teleport 10+m SSD players into cryo?", "Confirm", "Yes", "No")
if(confirm != "Yes")
return
var/list/people_to_cryo = list()
var/msg = "<html><head><title>SSD Report</title></head><body>"
msg += "<TABLE border='1'>SSD Players:"
var/mins_ssd
for(var/mob/living/carbon/human/H in living_mob_list)
if(!H.player_logged)
continue
if(!H.last_logout)
continue
if((H.last_logout + 6000) > world.time)
continue
if(!is_station_level(H.z))
continue
if(!isLivingSSD(H))
continue
if(H.anchored)
continue
if(H.stunned)
continue
if(H.handcuffed)
continue
if(H.buckled)
continue
if(H.pulledby)
continue
people_to_cryo += H
var/list/free_cryopods = list()
for(var/obj/machinery/cryopod/P in machines)
if(!P.occupant && istype(get_area(P), /area/crew_quarters/sleep))
free_cryopods += P
var/obj/machinery/cryopod/target_cryopod = null
var/people_cryoed = 0
for(var/mob/living/carbon/human/T in people_to_cryo)
if(free_cryopods.len)
target_cryopod = safepick(free_cryopods)
if(target_cryopod.check_occupant_allowed(T))
target_cryopod.take_occupant(T, 1)
people_cryoed++
to_chat(usr, "<span class='warning'>Sent [people_cryoed] people to cryostorage.</span>")
log_admin("[key_name(usr)] sent SSDs to cryo.")
message_admins("[key_name_admin(usr)] sent SSDs to cryo.")
feedback_add_details("admin_verb","SSDCRY") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
mins_ssd = round((world.time - H.last_logout) / 600)
msg += "<TR><TD>[H.key]</TD><TD>[H]</TD><TD>[H.job]</TD><TD>[mins_ssd] mins</TD><TD>[get_area(H)]<TD><A HREF='?_src_=holder;adminplayeropts=\ref[H]'>PP</A></TD>"
msg += "<TD><A href='?_src_=holder;cryossd=[H.UID()]'>Cryo</A></TD></TR>"
msg += "</TABLE></BODY></HTML>"
src << browse(msg, "window=Player_ssd_check")
/client/proc/toggle_ert_calling()
set category = "Event"