mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-31 08:36:32 +01:00
@@ -80,9 +80,9 @@
|
||||
var/flags
|
||||
switch(new_rank)
|
||||
if("Head Developer")
|
||||
flags = 32767
|
||||
flags = 65535
|
||||
if("Head Admin")
|
||||
flags = 32767
|
||||
flags = 65535
|
||||
if("Primary Admin")
|
||||
flags = 8191
|
||||
if("Secondary Admin")
|
||||
@@ -97,6 +97,8 @@
|
||||
flags = 5672
|
||||
if("Retired Admin")
|
||||
flags = 8194
|
||||
if("Duty Officer")
|
||||
flags = 32768
|
||||
else
|
||||
flags = 0
|
||||
|
||||
|
||||
@@ -393,6 +393,7 @@ var/list/admin_verbs_hideable = list(
|
||||
|
||||
var/list/admin_verbs_duty = list(
|
||||
/client/proc/spawn_duty_officer,
|
||||
/client/proc/cmd_admin_create_centcom_report,
|
||||
/client/proc/cmd_duty_say,
|
||||
/client/verb/returntobody
|
||||
)
|
||||
|
||||
@@ -155,7 +155,7 @@
|
||||
if(admin_ranks.len)
|
||||
new_rank = input("Please select a rank", "New rank", null, null) as null|anything in (admin_ranks|"*New Rank*")
|
||||
else
|
||||
new_rank = input("Please select a rank", "New rank", null, null) as null|anything in list("Head Developer","Head Admin", "Primary Admin", "Secondary Admin", "Moderator", "Trial Moderator", "Event Host - Moderator", "Event Host", "Retired Admin", "*New Rank*")
|
||||
new_rank = input("Please select a rank", "New rank", null, null) as null|anything in list("Head Developer","Head Admin", "Primary Admin", "Secondary Admin", "Moderator", "Trial Moderator", "Event Host - Moderator", "Event Host", "Retired Admin", "Duty Officer", "*New Rank*")
|
||||
|
||||
var/rights = 0
|
||||
if(D)
|
||||
|
||||
@@ -30,13 +30,28 @@
|
||||
//Stealing the second var because why not)
|
||||
/proc/Centcomm_announce(var/text , var/mob/Sender , var/silicon = 0 , var/iamessage)
|
||||
var/msg = copytext(sanitize(text), 1, MAX_MESSAGE_LEN)
|
||||
var/modmin = " (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>)"
|
||||
var/msg_start = "\blue <b><font color=orange>CENTCOMM"
|
||||
var/msg_end = ""
|
||||
|
||||
if(silicon)
|
||||
msg = "\blue <b><font color=orange>CENTCOMM(A.L.I.C.E.):</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;CentcommAIReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
msg_start += "(A.L.I.C.E.):</font>"
|
||||
msg_end = "(<A HREF='?_src_=holder;CentcommAIReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
else
|
||||
msg = "\blue <b><font color=orange>CENTCOMM[iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;CentcommReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
msg_start += "[iamessage ? " IA" : ""]:</font>"
|
||||
msg_end = "(<A HREF='?_src_=holder;CentcommReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
|
||||
for(var/client/C in admins)
|
||||
if(C.holder.rights & (R_ADMIN|R_DUTYOFF|R_FUN))
|
||||
C << msg
|
||||
if(C.holder.rights & (R_ADMIN|R_MOD|R_FUN))
|
||||
if(C.holder.rights & R_MOD && !C.holder.rights & R_DUTYOFF)
|
||||
continue
|
||||
C << "[msg_start][key_name(Sender, 1)][modmin][msg_end]"
|
||||
continue
|
||||
if(C.holder.rights & (R_DUTYOFF))
|
||||
if(C.holder.rights & R_MOD)
|
||||
C << "[msg_start][key_name(Sender, 1)][msg_end]"
|
||||
else
|
||||
C << "[msg_start][key_name(Sender, 0, 1, 0)][msg_end]"
|
||||
|
||||
/proc/Syndicate_announce(var/text , var/mob/Sender)
|
||||
var/msg = copytext(sanitize(text), 1, MAX_MESSAGE_LEN)
|
||||
|
||||
@@ -16,12 +16,14 @@
|
||||
src << "\red The game hasn't started yet!"
|
||||
return
|
||||
|
||||
if(mob.mind.special_role == "Duty Officer")
|
||||
if(mob.mind && mob.mind.special_role == "Duty Officer")
|
||||
src << "\red You are already a Duty Officer"
|
||||
return
|
||||
|
||||
var/wasLiving = 0
|
||||
if(istype(mob, /mob/living))
|
||||
holder.original_mob = mob
|
||||
wasLiving = 1
|
||||
|
||||
for (var/obj/effect/landmark/L in landmarks_list)
|
||||
if(L.name == "DutyOfficer")
|
||||
@@ -102,13 +104,16 @@
|
||||
M.mind = new
|
||||
M.mind.current = M
|
||||
M.mind.original = M
|
||||
M.mind.admin_mob_placeholder = mob
|
||||
if(wasLiving)
|
||||
M.mind.admin_mob_placeholder = mob
|
||||
M.mind.assigned_role = "Central Command Duty Officer"
|
||||
M.mind.special_role = "Duty Officer"
|
||||
M.loc = L.loc
|
||||
M.key = key
|
||||
spawn(1)
|
||||
holder.original_mob.key = "@[key]"
|
||||
|
||||
if(wasLiving)
|
||||
spawn(1)
|
||||
holder.original_mob.key = "@[key]"
|
||||
|
||||
M.equip_if_possible(new /obj/item/clothing/under/rank/centcom/officer(M), slot_w_uniform)
|
||||
M.equip_if_possible(new /obj/item/clothing/shoes/centcom(M), slot_shoes)
|
||||
@@ -145,7 +150,7 @@
|
||||
|
||||
if(!check_rights(0)) return
|
||||
|
||||
if(mob.mind.special_role != "Duty Officer")
|
||||
if(!mob.mind || mob.mind.special_role != "Duty Officer")
|
||||
verbs -= /client/verb/returntobody
|
||||
return
|
||||
|
||||
@@ -162,6 +167,7 @@
|
||||
verbs -= /client/verb/returntobody
|
||||
return
|
||||
holder.original_mob.key = key
|
||||
holder.original_mob = null
|
||||
else
|
||||
if(mob.mind.admin_mob_placeholder)
|
||||
mob.mind.admin_mob_placeholder.key = key
|
||||
|
||||
@@ -173,6 +173,14 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
else
|
||||
var/response = alert(src, "Are you -sure- you want to ghost?\n(You are alive. If you ghost, you won't be able to play this round for another 30 minutes! You can't change your mind so choose wisely!)","Are you sure you want to ghost?","Ghost","Stay in body")
|
||||
if(response != "Ghost") return //didn't want to ghost after-all
|
||||
if(client.holder && mind.special_role == "DutyOfficer")
|
||||
client.holder.original_mob = null
|
||||
var/mob/dead/observer/ghost = ghostize(0)
|
||||
ghost.timeofdeath = world.time
|
||||
mind.admin_mob_placeholder = null
|
||||
del(src)
|
||||
return
|
||||
|
||||
resting = 1
|
||||
var/turf/location = get_turf(src)
|
||||
message_admins("[key_name_admin(usr)] has ghosted. (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[location.x];Y=[location.y];Z=[location.z]'>JMP</a>)")
|
||||
@@ -243,7 +251,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
usr << "<span class='warning'>The astral cord that ties your body and your spirit has been severed. You are likely to wander the realm beyond until your body is finally dead and thus reunited with you.</span>"
|
||||
return
|
||||
mind.current.ajourn=0
|
||||
if(mind.current == client.holder.original_mob)
|
||||
if(client.holder && mind.current == client.holder.original_mob)
|
||||
client.holder.original_mob = null
|
||||
mind.current.key = key
|
||||
return 1
|
||||
|
||||
@@ -63,7 +63,8 @@
|
||||
continue
|
||||
|
||||
if(M.client && M.client.holder && (M.client.prefs.toggles & CHAT_DEAD) ) // Show the message to admins/mods with deadchat toggled on
|
||||
M << rendered //Admins can hear deadchat, if they choose to, no matter if they're blind/deaf or not.
|
||||
if(M.client.holder.rights & (R_MOD|R_ADMIN|R_DEV|R_FUN))
|
||||
M << rendered //Admins can hear deadchat, if they choose to, no matter if they're blind/deaf or not.
|
||||
|
||||
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user