Merge branch 'master' into logging-improvements

This commit is contained in:
farie82
2020-04-12 08:42:50 +02:00
committed by GitHub
232 changed files with 784 additions and 652 deletions
+1
View File
@@ -44,6 +44,7 @@ GLOBAL_PROTECT(admin_ranks) // this shit is being protected for obvious reasons
if("mod") rights |= R_MOD
if("mentor") rights |= R_MENTOR
if("proccall") rights |= R_PROCCALL
if("viewruntimes") rights |= R_VIEWRUNTIMES
GLOB.admin_ranks[rank] = rights
previous_rights = rights
+5 -1
View File
@@ -230,7 +230,9 @@ GLOBAL_LIST_INIT(admin_verbs_ticket, list(
/client/proc/add_admin_verbs()
if(holder)
verbs += GLOB.admin_verbs_default
// If they have ANYTHING OTHER THAN ONLY VIEW RUNTIMES (65536), then give them the default admin verbs
if(holder.rights != R_VIEWRUNTIMES)
verbs += GLOB.admin_verbs_default
if(holder.rights & R_BUILDMODE)
verbs += /client/proc/togglebuildmodeself
if(holder.rights & R_ADMIN)
@@ -264,6 +266,8 @@ GLOBAL_LIST_INIT(admin_verbs_ticket, list(
verbs += GLOB.admin_verbs_mentor
if(holder.rights & R_PROCCALL)
verbs += GLOB.admin_verbs_proccall
if(holder.rights & R_VIEWRUNTIMES)
verbs += /client/proc/view_runtimes
/client/proc/remove_admin_verbs()
verbs.Remove(
+4 -3
View File
@@ -392,11 +392,12 @@
var/logout_status
logout_status = M.client ? "" : " <i>(logged out)</i>"
var/dname = M.real_name
var/area/A = get_area(M)
if(!dname)
dname = M
return {"<tr><td><a href='?src=[UID()];adminplayeropts=[M.UID()]'>[dname]</a><b>[caption]</b>[logout_status][M.stat == 2 ? " <b><font color=red>(DEAD)</font></b>" : ""]</td>
<td><A href='?src=[usr.UID()];priv_msg=[M.client ? M.client.UID() : null]'>PM</A></td>[close ? "</tr>" : ""]"}
return {"<tr><td><a href='?src=[UID()];adminplayeropts=[M.UID()]'>[dname]</a><b>[caption]</b>[logout_status][istype(A, /area/security/permabrig) ? "<b><font color=red> (PERMA) </b></font>" : ""][M.stat == 2 ? " <b><font color=red>(DEAD)</font></b>" : ""]</td>
<td><A href='?src=[usr.UID()];priv_msg=[M.client ? M.client.UID() : null]'>PM</A> [ADMIN_FLW(M, "FLW")] </td>[close ? "</tr>" : ""]"}
/datum/admins/proc/check_antagonists()
if(!check_rights(R_ADMIN)) return
@@ -492,7 +493,7 @@
dat += check_role_table("Ninjas", ticker.mode.ninjas)*/
if(SSticker.mode.cult.len)
dat += check_role_table("Cultists", SSticker.mode.cult, 0)
dat += check_role_table("Cultists", SSticker.mode.cult)
dat += "<br> use <a href='?src=[UID()];cult_mindspeak=[UID()]'>Cult Mindspeak</a>"
if(GAMEMODE_IS_CULT)
var/datum/game_mode/cult/cult_round = SSticker.mode
+1 -1
View File
@@ -105,7 +105,7 @@
<A href='?src=[UID()];secretsfun=monkey'>Turn all humans into monkeys</A><BR>
<A href='?src=[UID()];secretsfun=fakeguns'>Make all items look like guns</A><BR>
<A href='?src=[UID()];secretsfun=prisonwarp'>Warp all Players to Prison</A><BR>
<A href='?src=[UID()];secretsfun=retardify'>Make all players retarded</A><BR>
<A href='?src=[UID()];secretsfun=stupify'>Make all players stupid</A><BR>
<b>Misc</b><br>
<A href='?src=[UID()];secretsfun=sec_classic1'>Remove firesuits, grilles, and pods</A>&nbsp;&nbsp;
<A href='?src=[UID()];secretsfun=tripleAI'>Triple AI mode (needs to be used in the lobby)</A><BR>
+2 -2
View File
@@ -2818,13 +2818,13 @@
return
SSweather.run_weather(/datum/weather/ash_storm)
message_admins("[key_name_admin(usr)] spawned an ash storm on the mining level")
if("retardify")
if("stupify")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","RET")
for(var/mob/living/carbon/human/H in GLOB.player_list)
to_chat(H, "<span class='danger'>You suddenly feel stupid.</span>")
H.setBrainLoss(60)
message_admins("[key_name_admin(usr)] made everybody retarded")
message_admins("[key_name_admin(usr)] made everybody stupid")
if("fakeguns")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","FG")
+1 -1
View File
@@ -261,7 +261,7 @@
/datum/pm_tracker
var/current_title = ""
var/open = FALSE
var/list/pms = list()
var/list/datum/pm_convo/pms = list()
var/show_archived = FALSE
var/window_id = "pms_window"
+1 -1
View File
@@ -832,7 +832,7 @@ GLOBAL_PROTECT(AdminProcCaller)
set name = "View Runtimes"
set desc = "Open the Runtime Viewer"
if(!check_rights(R_DEBUG))
if(!check_rights(R_DEBUG|R_VIEWRUNTIMES))
return
GLOB.error_cache.showTo(usr)
+1 -1
View File
@@ -85,7 +85,7 @@
var/output = "<b>Radio Report</b><hr>"
for(var/fq in SSradio.frequencies)
output += "<b>Freq: [fq]</b><br>"
var/list/datum/radio_frequency/fqs = SSradio.frequencies[fq]
var/datum/radio_frequency/fqs = SSradio.frequencies[fq]
if(!fqs)
output += "&nbsp;&nbsp;<b>ERROR</b><br>"
continue
+1 -1
View File
@@ -27,7 +27,7 @@
if(!themission)
alert("No mission specified. Aborting.")
return
var/admin_outfits = subtypesof(/datum/outfit/admin)
var/admin_outfits = subtypesof(/datum/outfit/admin) + list(/datum/outfit/naked)
var/outfit_list = list()
for(var/type in admin_outfits)
var/datum/outfit/admin/O = type
+1 -1
View File
@@ -17,4 +17,4 @@ GLOBAL_LIST_INIT(open_logging_views, list())
if(mobs_to_add?.len)
cur_view.add_mobs(mobs_to_add)
cur_view.show_ui(usr)
cur_view.show_ui(usr)
+1 -1
View File
@@ -543,7 +543,7 @@ GLOBAL_LIST_INIT(VVpixelmovement, list("step_x", "step_y", "step_size", "bound_h
var/var_value
if(param_var_name)
if(!param_var_name in O.vars)
if(!(param_var_name in O.vars))
to_chat(src, "A variable with this name ([param_var_name]) doesn't exist in this datum ([O])")
return
variable = param_var_name
+1 -1
View File
@@ -82,7 +82,7 @@
else if((H in GLOB.team_bravo) && (A in GLOB.team_bravo))
to_chat(A, "<span class='warning'>He's on your team!</span>")
return
else if(!A in GLOB.team_alpha && !A in GLOB.team_bravo)
else if(!(A in GLOB.team_alpha) && !(A in GLOB.team_bravo))
to_chat(A, "<span class='warning'>You're not part of the dodgeball game, sorry!</span>")
return
else
+1 -1
View File
@@ -533,7 +533,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
var/list/mobs = list()
var/list/ghosts = list()
var/list/sortmob = sortAtom(GLOB.mob_list) // get the mob list.
/var/any=0
var/any=0
for(var/mob/dead/observer/M in sortmob)
mobs.Add(M) //filter it where it's only ghosts
any = 1 //if no ghosts show up, any will just be 0