mirror of
https://github.com/Yawn-Wider/YWPolarisVore.git
synced 2026-08-24 05:28:16 +01:00
Merge branch 'release' of https://github.com/VOREStation/VOREStation into upstream-update
This commit is contained in:
@@ -83,7 +83,7 @@
|
||||
var/sql = "INSERT INTO erro_ban (`id`,`bantime`,`serverip`,`bantype`,`reason`,`job`,`duration`,`rounds`,`expiration_time`,`ckey`,`computerid`,`ip`,`a_ckey`,`a_computerid`,`a_ip`,`who`,`adminwho`,`edits`,`unbanned`,`unbanned_datetime`,`unbanned_ckey`,`unbanned_computerid`,`unbanned_ip`) VALUES (null, Now(), '[serverip]', '[bantype_str]', '[reason]', '[job]', [(duration)?"[duration]":"0"], [(rounds)?"[rounds]":"0"], Now() + INTERVAL [(duration>0) ? duration : 0] MINUTE, '[ckey]', '[computerid]', '[ip]', '[a_ckey]', '[a_computerid]', '[a_ip]', '[who]', '[adminwho]', '', null, null, null, null, null)"
|
||||
var/DBQuery/query_insert = dbcon.NewQuery(sql)
|
||||
query_insert.Execute()
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='blue'>Ban saved to database.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_blue("Ban saved to database.")]</span>")
|
||||
message_admins("[key_name_admin(usr)] has added a [bantype_str] for [ckey] [(job)?"([job])":""] [(duration > 0)?"([duration] minutes)":""] with the reason: \"[reason]\" to the ban database.",1)
|
||||
|
||||
|
||||
@@ -137,17 +137,17 @@
|
||||
ban_number++;
|
||||
|
||||
if(ban_number == 0)
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Database update failed due to no bans fitting the search criteria. If this is not a legacy ban you should contact the database admin.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("Database update failed due to no bans fitting the search criteria. If this is not a legacy ban you should contact the database admin.")]</span>")
|
||||
return
|
||||
|
||||
if(ban_number > 1)
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Database update failed due to multiple bans fitting the search criteria. Note down the ckey, job and current time and contact the database admin.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("Database update failed due to multiple bans fitting the search criteria. Note down the ckey, job and current time and contact the database admin.")]</span>")
|
||||
return
|
||||
|
||||
if(istext(ban_id))
|
||||
ban_id = text2num(ban_id)
|
||||
if(!isnum(ban_id))
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Database update failed due to a ban ID mismatch. Contact the database admin.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("Database update failed due to a ban ID mismatch. Contact the database admin.")]</span>")
|
||||
return
|
||||
|
||||
DB_ban_unban_by_id(ban_id)
|
||||
@@ -228,11 +228,11 @@
|
||||
ban_number++;
|
||||
|
||||
if(ban_number == 0)
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Database update failed due to a ban id not being present in the database.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("Database update failed due to a ban id not being present in the database.")]</span>")
|
||||
return
|
||||
|
||||
if(ban_number > 1)
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Database update failed due to multiple bans having the same ID. Contact the database admin.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("Database update failed due to multiple bans having the same ID. Contact the database admin.")]</span>")
|
||||
return
|
||||
|
||||
if(!src.owner || !istype(src.owner, /client))
|
||||
@@ -268,7 +268,7 @@
|
||||
|
||||
establish_db_connection()
|
||||
if(!dbcon.IsConnected())
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Failed to establish database connection</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("Failed to establish database connection")]</span>")
|
||||
return
|
||||
|
||||
var/output = "<div align='center'><table width='90%'><tr>"
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
//Guest Checking
|
||||
if(!config.guests_allowed && IsGuestKey(key))
|
||||
log_adminwarn("Failed Login: [key] - Guests not allowed")
|
||||
message_admins("<font color='blue'>Failed Login: [key] - Guests not allowed</font>")
|
||||
message_admins(span_blue("Failed Login: [key] - Guests not allowed"))
|
||||
return list("reason"="guest", "desc"="\nReason: Guests not allowed. Please sign in with a byond account.")
|
||||
|
||||
//check if the IP address is a known TOR node
|
||||
if(config && config.ToRban && ToRban_isbanned(address))
|
||||
log_adminwarn("Failed Login: [src] - Banned: ToR")
|
||||
message_admins("<font color='blue'>Failed Login: [src] - Banned: ToR</font>")
|
||||
message_admins(span_blue("Failed Login: [src] - Banned: ToR"))
|
||||
//ban their computer_id and ckey for posterity
|
||||
AddBan(ckey(key), computer_id, "Use of ToR", "Automated Ban", 0, 0)
|
||||
return list("reason"="Using ToR", "desc"="\nReason: The network you are using to connect has been banned.\nIf you believe this is a mistake, please request help at [config.banappeals]")
|
||||
@@ -25,7 +25,7 @@
|
||||
. = CheckBan( ckey(key), computer_id, address )
|
||||
if(.)
|
||||
log_adminwarn("Failed Login: [key] [computer_id] [address] - Banned [.["reason"]]")
|
||||
message_admins("<font color='blue'>Failed Login: [key] id:[computer_id] ip:[address] - Banned [.["reason"]]</font>")
|
||||
message_admins(span_blue("Failed Login: [key] id:[computer_id] ip:[address] - Banned [.["reason"]]"))
|
||||
return .
|
||||
|
||||
return ..() //default pager ban stuff
|
||||
|
||||
@@ -54,10 +54,10 @@
|
||||
if(config)
|
||||
if(config.ToRban)
|
||||
config.ToRban = 0
|
||||
message_admins("<font color='red'>ToR banning disabled.</font>")
|
||||
message_admins(span_red("ToR banning disabled."))
|
||||
else
|
||||
config.ToRban = 1
|
||||
message_admins("<font colot='green'>ToR banning enabled.</font>")
|
||||
message_admins(span_green("ToR banning enabled."))
|
||||
if("show")
|
||||
var/savefile/F = new(TORFILE)
|
||||
var/dat
|
||||
@@ -80,7 +80,7 @@
|
||||
var/input = tgui_input_text(src,"Please input an IP address to search for:","Find ToR ban",null)
|
||||
if(input)
|
||||
if(ToRban_isbanned(input))
|
||||
to_chat(src, "<span class='filter_adminlog'><font color='green'><b>Address is a known ToR address</b></font></span>")
|
||||
to_chat(src, "<span class='filter_adminlog'>[span_orange("<b>Address is a known ToR address</b>")]</span>")
|
||||
else
|
||||
to_chat(src, "<span class='filter_adminlog danger'>Address is not a known ToR address</span>")
|
||||
return
|
||||
|
||||
+10
-10
@@ -869,7 +869,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
else
|
||||
to_world("<B>New players may now enter the game.</B>")
|
||||
log_admin("[key_name(usr)] toggled new player game entering.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] toggled new player game entering.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] toggled new player game entering."), 1)
|
||||
world.update_status()
|
||||
feedback_add_details("admin_verb","TE") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
@@ -895,7 +895,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
to_world("<B>You may now respawn.</B>")
|
||||
else
|
||||
to_world("<B>You may no longer respawn :(</B>")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] toggled respawn to [config.abandon_allowed ? "On" : "Off"].</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] toggled respawn to [config.abandon_allowed ? "On" : "Off"]."), 1)
|
||||
log_admin("[key_name(usr)] toggled respawn to [config.abandon_allowed ? "On" : "Off"].")
|
||||
world.update_status()
|
||||
feedback_add_details("admin_verb","TR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
@@ -909,7 +909,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
to_world("<B>Persistence is now enabled..</B>")
|
||||
else
|
||||
to_world("<B>Persistence is no longer enabled.</B>")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] toggled persistence to [config.persistence_disabled ? "Off" : "On"].</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] toggled persistence to [config.persistence_disabled ? "Off" : "On"]."), 1)
|
||||
log_admin("[key_name(usr)] toggled persistence to [config.persistence_disabled ? "Off" : "On"].")
|
||||
world.update_status()
|
||||
feedback_add_details("admin_verb","TPD") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
@@ -923,7 +923,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
to_world("<B>Persistence is now enabled..</B>")
|
||||
else
|
||||
to_world("<B>Persistence is no longer enabled.</B>")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] toggled persistence to [config.persistence_ignore_mapload ? "Off" : "On"].</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] toggled persistence to [config.persistence_ignore_mapload ? "Off" : "On"]."), 1)
|
||||
log_admin("[key_name(usr)] toggled persistence to [config.persistence_ignore_mapload ? "Off" : "On"].")
|
||||
world.update_status()
|
||||
feedback_add_details("admin_verb","TMPD") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
@@ -955,7 +955,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
if (SSticker.current_state >= GAME_STATE_PLAYING)
|
||||
SSticker.delay_end = !SSticker.delay_end
|
||||
log_admin("[key_name(usr)] [SSticker.delay_end ? "delayed the round end" : "has made the round end normally"].")
|
||||
message_admins("<font color='blue'>[key_name(usr)] [SSticker.delay_end ? "delayed the round end" : "has made the round end normally"].</font>", 1)
|
||||
message_admins(span_blue("[key_name(usr)] [SSticker.delay_end ? "delayed the round end" : "has made the round end normally"]."), 1)
|
||||
return
|
||||
round_progressing = !round_progressing
|
||||
if (!round_progressing)
|
||||
@@ -971,7 +971,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
set desc="Toggle admin jumping"
|
||||
set name="Toggle Jump"
|
||||
config.allow_admin_jump = !(config.allow_admin_jump)
|
||||
message_admins("<font color='blue'>Toggled admin jumping to [config.allow_admin_jump].</font>")
|
||||
message_admins(span_blue("Toggled admin jumping to [config.allow_admin_jump]."))
|
||||
feedback_add_details("admin_verb","TJ") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
/datum/admins/proc/adspawn()
|
||||
@@ -979,7 +979,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
set desc="Toggle admin spawning"
|
||||
set name="Toggle Spawn"
|
||||
config.allow_admin_spawning = !(config.allow_admin_spawning)
|
||||
message_admins("<font color='blue'>Toggled admin item spawning to [config.allow_admin_spawning].</font>")
|
||||
message_admins(span_blue("Toggled admin item spawning to [config.allow_admin_spawning]."))
|
||||
feedback_add_details("admin_verb","TAS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
/datum/admins/proc/adrev()
|
||||
@@ -987,7 +987,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
set desc="Toggle admin revives"
|
||||
set name="Toggle Revive"
|
||||
config.allow_admin_rev = !(config.allow_admin_rev)
|
||||
message_admins("<font color='blue'>Toggled reviving to [config.allow_admin_rev].</font>")
|
||||
message_admins(span_blue("Toggled reviving to [config.allow_admin_rev]."))
|
||||
feedback_add_details("admin_verb","TAR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
/datum/admins/proc/immreboot()
|
||||
@@ -997,7 +997,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
if(!usr.client.holder) return
|
||||
if(alert(usr, "Reboot server?","Reboot!","Yes","No") == "No") // Not tgui_alert for safety
|
||||
return
|
||||
to_world("<font color='red'><b>Rebooting world!</b></font> <font color='blue'>Initiated by [usr.client.holder.fakekey ? "Admin" : usr.key]!</font>")
|
||||
to_world("[span_red("<b>Rebooting world!</b>")] [span_blue("Initiated by [usr.client.holder.fakekey ? "Admin" : usr.key]!")]")
|
||||
log_admin("[key_name(usr)] initiated an immediate reboot.")
|
||||
|
||||
feedback_set_details("end_error","immediate admin reboot - by [usr.key] [usr.client.holder.fakekey ? "(stealth)" : ""]")
|
||||
@@ -1263,7 +1263,7 @@ var/datum/announcement/minor/admin_min_announcer = new
|
||||
else
|
||||
to_world("<B>Guests may now enter the game.</B>")
|
||||
log_admin("[key_name(usr)] toggled guests game entering [config.guests_allowed?"":"dis"]allowed.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] toggled guests game entering [config.guests_allowed?"":"dis"]allowed.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] toggled guests game entering [config.guests_allowed?"":"dis"]allowed."), 1)
|
||||
feedback_add_details("admin_verb","TGU") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
/datum/admins/proc/output_ai_laws()
|
||||
|
||||
@@ -279,7 +279,7 @@
|
||||
var/light_impact_range = tgui_input_number(usr, "Light impact range (in tiles):")
|
||||
var/flash_range = tgui_input_number(usr, "Flash range (in tiles):")
|
||||
explosion(epicenter, devastation_range, heavy_impact_range, light_impact_range, flash_range)
|
||||
message_admins("<font color='blue'>[ckey] creating an admin explosion at [epicenter.loc].</font>")
|
||||
message_admins(span_blue("[ckey] creating an admin explosion at [epicenter.loc]."))
|
||||
feedback_add_details("admin_verb","DB") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
/client/proc/give_disease2(mob/T as mob in mob_list) // -- Giacom
|
||||
@@ -311,7 +311,7 @@
|
||||
|
||||
feedback_add_details("admin_verb","GD2") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
log_admin("[key_name(usr)] gave [key_name(T)] a [greater] disease2 with infection chance [D.infectionchance].")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] gave [key_name(T)] a [greater] disease2 with infection chance [D.infectionchance].</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] gave [key_name(T)] a [greater] disease2 with infection chance [D.infectionchance]."), 1)
|
||||
|
||||
/client/proc/admin_give_modifier(var/mob/living/L)
|
||||
set category = "Debug"
|
||||
@@ -347,7 +347,7 @@
|
||||
return
|
||||
O.audible_message(message)
|
||||
log_admin("[key_name(usr)] made [O] at [O.x], [O.y], [O.z]. make a sound")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] made [O] at [O.x], [O.y], [O.z]. make a sound.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] made [O] at [O.x], [O.y], [O.z]. make a sound."), 1)
|
||||
feedback_add_details("admin_verb","MS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
|
||||
@@ -377,7 +377,7 @@
|
||||
to_chat(usr, "<span class='filter_system'><b>[SSair.can_fire ? "En" : "Dis"]abled air processing.</b></span>")
|
||||
feedback_add_details("admin_verb","KA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
log_admin("[key_name(usr)] used 'kill air'.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] used 'kill air'.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] used 'kill air'."), 1)
|
||||
|
||||
/client/proc/readmin_self()
|
||||
set name = "Re-Admin self"
|
||||
@@ -533,7 +533,7 @@
|
||||
to_chat(T, "<span class='filter_system notice'>Move along.</span>")
|
||||
|
||||
log_admin("[key_name(usr)] told [key_name(T)] to man up and deal with it.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] told [key_name(T)] to man up and deal with it.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] told [key_name(T)] to man up and deal with it."), 1)
|
||||
|
||||
/client/proc/global_man_up()
|
||||
set category = "Fun"
|
||||
@@ -547,7 +547,7 @@
|
||||
T << 'sound/voice/ManUp1.ogg'
|
||||
|
||||
log_admin("[key_name(usr)] told everyone to man up and deal with it.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] told everyone to man up and deal with it.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] told everyone to man up and deal with it."), 1)
|
||||
|
||||
/client/proc/give_spell(mob/T as mob in mob_list) // -- Urist
|
||||
set category = "Fun"
|
||||
@@ -558,4 +558,4 @@
|
||||
T.spell_list += new S
|
||||
feedback_add_details("admin_verb","GS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
log_admin("[key_name(usr)] gave [key_name(T)] the spell [S].")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] gave [key_name(T)] the spell [S].</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] gave [key_name(T)] the spell [S]."), 1)
|
||||
|
||||
@@ -39,12 +39,12 @@
|
||||
testname = replacetext(testname, "()", "")
|
||||
|
||||
if(targetselected && !hascall(target,testname))
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Error: callproc(): type [target.type] has no proc named [procname].</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>" + span_red("Error: callproc(): type [target.type] has no proc named [procname].") + "</span>")
|
||||
return
|
||||
else
|
||||
var/procpath = text2path(procname)
|
||||
if (!procpath)
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Error: callproc(): proc [procname] does not exist. (Did you forget the /proc/ part?)</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>" + span_red("Error: callproc(): proc [procname] does not exist. (Did you forget the /proc/ part?)") + "</span>")
|
||||
return
|
||||
var/list/lst = get_callproc_args()
|
||||
if(!lst)
|
||||
@@ -52,7 +52,7 @@
|
||||
|
||||
if(targetselected)
|
||||
if(!target)
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Error: callproc(): owner of proc no longer exists.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>" + span_red("Error: callproc(): owner of proc no longer exists.") + "</span>")
|
||||
return
|
||||
var/msg = "[key_name(src)] called [target]'s [procname]() with [lst.len ? "the arguments [list2params(lst)]":"no arguments"]."
|
||||
log_admin(msg)
|
||||
@@ -140,7 +140,7 @@ GLOBAL_PROTECT(AdminProcCallSpamPrevention)
|
||||
if(!procname)
|
||||
return
|
||||
if(!hascall(A,procname))
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Error: callproc_datum(): type [A.type] has no proc named [procname].</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>" + span_red("Error: callproc_datum(): type [A.type] has no proc named [procname].") + "</span>")
|
||||
return
|
||||
var/list/lst = get_callproc_args()
|
||||
if(!lst)
|
||||
@@ -190,7 +190,7 @@ GLOBAL_PROTECT(AdminProcCallSpamPrevention)
|
||||
. = ""
|
||||
if(islist(returnval))
|
||||
var/list/returnedlist = returnval
|
||||
. = "<font color='blue'>"
|
||||
. = "<span class='blue'>"
|
||||
if(returnedlist.len)
|
||||
var/assoc_check = returnedlist[1]
|
||||
if(istext(assoc_check) && (returnedlist[assoc_check] != null))
|
||||
@@ -204,7 +204,7 @@ GLOBAL_PROTECT(AdminProcCallSpamPrevention)
|
||||
. += "\n[elem]"
|
||||
else
|
||||
. = "[procname] returned an empty list"
|
||||
. += "</font>"
|
||||
. += "</span>"
|
||||
|
||||
else
|
||||
. = "<font color='blue'>[procname] returned: [!isnull(returnval) ? returnval : "null"]</font>"
|
||||
. = span_blue("[procname] returned: [!isnull(returnval) ? returnval : "null"]")
|
||||
|
||||
@@ -141,7 +141,7 @@ var/savefile/Banlistjob
|
||||
|
||||
Banlistjob.cd = "/base"
|
||||
if ( Banlistjob.dir.Find("[ckey][computerid][rank]") )
|
||||
to_chat(usr,"<font color='red'>Banjob already exists.</font>")
|
||||
to_chat(usr, span_red("Banjob already exists."))
|
||||
return 0
|
||||
else
|
||||
Banlistjob.dir.Add("[ckey][computerid][rank]")
|
||||
|
||||
@@ -51,13 +51,13 @@
|
||||
return
|
||||
|
||||
if(!usr.client.holder || !(usr.client.holder.rights & R_PERMISSIONS))
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>You do not have permission to do this!</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("You do not have permission to do this!")]</span>")
|
||||
return
|
||||
|
||||
establish_db_connection()
|
||||
|
||||
if(!dbcon.IsConnected())
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Failed to establish database connection</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("Failed to establish database connection")]</span>")
|
||||
return
|
||||
|
||||
if(!adm_ckey || !new_rank)
|
||||
@@ -85,14 +85,14 @@
|
||||
insert_query.Execute()
|
||||
var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Added new admin [adm_ckey] to rank [new_rank]');")
|
||||
log_query.Execute()
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='blue'>New admin added.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_blue("New admin added.")]</span>")
|
||||
else
|
||||
if(!isnull(admin_id) && isnum(admin_id))
|
||||
var/DBQuery/insert_query = dbcon.NewQuery("UPDATE `erro_admin` SET rank = '[new_rank]' WHERE id = [admin_id]")
|
||||
insert_query.Execute()
|
||||
var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Edited the rank of [adm_ckey] to [new_rank]');")
|
||||
log_query.Execute()
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='blue'>Admin rank changed.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_blue("Admin rank changed.")]</span>")
|
||||
|
||||
/datum/admins/proc/log_admin_permission_modification(var/adm_ckey, var/new_permission)
|
||||
if(config.admin_legacy_system) return
|
||||
@@ -101,12 +101,12 @@
|
||||
return
|
||||
|
||||
if(!usr.client.holder || !(usr.client.holder.rights & R_PERMISSIONS))
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>You do not have permission to do this!</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red(">You do not have permission to do this!")]</span>")
|
||||
return
|
||||
|
||||
establish_db_connection()
|
||||
if(!dbcon.IsConnected())
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='red'>Failed to establish database connection</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_red("Failed to establish database connection!")]</span>")
|
||||
return
|
||||
|
||||
if(!adm_ckey || !new_permission)
|
||||
@@ -140,10 +140,10 @@
|
||||
insert_query.Execute()
|
||||
var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Removed permission [rights2text(new_permission)] (flag = [new_permission]) to admin [adm_ckey]');")
|
||||
log_query.Execute()
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='blue'>Permission removed.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_blue("Permission removed.")]</span>")
|
||||
else //This admin doesn't have this permission, so we are adding it.
|
||||
var/DBQuery/insert_query = dbcon.NewQuery("UPDATE `erro_admin` SET flags = '[admin_rights | new_permission]' WHERE id = [admin_id]")
|
||||
insert_query.Execute()
|
||||
var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Added permission [rights2text(new_permission)] (flag = [new_permission]) to admin [adm_ckey]')")
|
||||
log_query.Execute()
|
||||
to_chat(usr, "<span class='filter_adminlog'><font color='blue'>Permission added.</font></span>")
|
||||
to_chat(usr, "<span class='filter_adminlog'>[span_blue("Permission added.")]</span>")
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
infos += P
|
||||
info << infos
|
||||
|
||||
message_admins("<font color='blue'>[key_name_admin(user)] has edited [key]'s notes.</font>")
|
||||
message_admins(span_blue("[key_name_admin(user)] has edited [key]'s notes."))
|
||||
log_admin("[key_name(user)] has edited [key]'s notes.")
|
||||
admin_action_message(P.author, key, "added note on", note, 0) //VOREStation Add
|
||||
del(info) // savefile, so NOT qdel
|
||||
@@ -62,7 +62,7 @@
|
||||
infos.Remove(item)
|
||||
info << infos
|
||||
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] deleted one of [key]'s notes.</font>")
|
||||
message_admins(span_blue("[key_name_admin(usr)] deleted one of [key]'s notes."))
|
||||
log_admin("[key_name(usr)] deleted one of [key]'s notes.")
|
||||
admin_action_message(usr.key, key, "deleted note on", "\[Note gone\]", 0) //VOREStation Add
|
||||
qdel(info)
|
||||
|
||||
+34
-34
@@ -234,7 +234,7 @@
|
||||
if (emergency_shuttle.can_call())
|
||||
emergency_shuttle.call_evac()
|
||||
log_admin("[key_name(usr)] called the Emergency Shuttle")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] called the Emergency Shuttle to the station.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] called the Emergency Shuttle to the station."), 1)
|
||||
|
||||
if("2")
|
||||
if (!( ticker ) || !emergency_shuttle.location())
|
||||
@@ -242,12 +242,12 @@
|
||||
if (emergency_shuttle.can_call())
|
||||
emergency_shuttle.call_evac()
|
||||
log_admin("[key_name(usr)] called the Emergency Shuttle")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] called the Emergency Shuttle to the station.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] called the Emergency Shuttle to the station."), 1)
|
||||
|
||||
else if (emergency_shuttle.can_recall())
|
||||
emergency_shuttle.recall()
|
||||
log_admin("[key_name(usr)] sent the Emergency Shuttle back")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] sent the Emergency Shuttle back.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] sent the Emergency Shuttle back."), 1)
|
||||
|
||||
href_list["secretsadmin"] = "check_antagonist"
|
||||
|
||||
@@ -260,14 +260,14 @@
|
||||
emergency_shuttle.launch_time = world.time + new_time_left*10
|
||||
|
||||
log_admin("[key_name(usr)] edited the Emergency Shuttle's launch time to [new_time_left]")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] edited the Emergency Shuttle's launch time to [new_time_left*10]</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] edited the Emergency Shuttle's launch time to [new_time_left*10]"), 1)
|
||||
else if (emergency_shuttle.shuttle.has_arrive_time())
|
||||
|
||||
var/new_time_left = tgui_input_number(usr, "Enter new shuttle arrival time (seconds):","Edit Shuttle Arrival Time", emergency_shuttle.estimate_arrival_time() )
|
||||
emergency_shuttle.shuttle.arrive_time = world.time + new_time_left*10
|
||||
|
||||
log_admin("[key_name(usr)] edited the Emergency Shuttle's arrival time to [new_time_left]")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] edited the Emergency Shuttle's arrival time to [new_time_left*10]</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] edited the Emergency Shuttle's arrival time to [new_time_left*10]"), 1)
|
||||
else
|
||||
tgui_alert_async(usr, "The shuttle is neither counting down to launch nor is it in transit. Please try again when it is.")
|
||||
|
||||
@@ -278,7 +278,7 @@
|
||||
|
||||
ticker.delay_end = !ticker.delay_end
|
||||
log_admin("[key_name(usr)] [ticker.delay_end ? "delayed the round end" : "has made the round end normally"].")
|
||||
message_admins("<font color='blue'>[key_name(usr)] [ticker.delay_end ? "delayed the round end" : "has made the round end normally"].</font>", 1)
|
||||
message_admins(span_blue("[key_name(usr)] [ticker.delay_end ? "delayed the round end" : "has made the round end normally"]."), 1)
|
||||
href_list["secretsadmin"] = "check_antagonist"
|
||||
|
||||
else if(href_list["simplemake"])
|
||||
@@ -296,7 +296,7 @@
|
||||
if("Yes") delmob = 1
|
||||
|
||||
log_admin("[key_name(usr)] has used rudimentary transformation on [key_name(M)]. Transforming to [href_list["simplemake"]]; deletemob=[delmob]")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] has used rudimentary transformation on [key_name_admin(M)]. Transforming to [href_list["simplemake"]]; deletemob=[delmob]</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] has used rudimentary transformation on [key_name_admin(M)]. Transforming to [href_list["simplemake"]]; deletemob=[delmob]"), 1)
|
||||
|
||||
switch(href_list["simplemake"])
|
||||
if("observer") M.change_mob_type( /mob/observer/dead , null, null, delmob )
|
||||
@@ -376,7 +376,7 @@
|
||||
|
||||
log_admin("[key_name(usr)] edited [banned_key]'s ban. Reason: [reason] Duration: [duration]")
|
||||
ban_unban_log_save("[key_name(usr)] edited [banned_key]'s ban. Reason: [reason] Duration: [duration]")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] edited [banned_key]'s ban. Reason: [reason] Duration: [duration]</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] edited [banned_key]'s ban. Reason: [reason] Duration: [duration]"), 1)
|
||||
Banlist.cd = "/base/[banfolder]"
|
||||
Banlist["reason"] << reason
|
||||
Banlist["temp"] << temp
|
||||
@@ -804,10 +804,10 @@
|
||||
else
|
||||
msg += ", [job]"
|
||||
notes_add(M.ckey, "Banned from [msg] - [reason]", usr)
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] banned [key_name_admin(M)] from [msg] for [mins] minutes</font>", 1)
|
||||
to_chat(M, "<span class='filter_system'><font color='red'><BIG><B>You have been jobbanned by [usr.client.ckey] from: [msg].</B></BIG></font></span>")
|
||||
to_chat(M, "<span class='filter_system'><font color='red'><B>The reason is: [reason]</B></font></span>")
|
||||
to_chat(M, "<span class='filter_system'><font color='red'>This jobban will be lifted in [mins] minutes.</font></span>")
|
||||
message_admins(span_blue("[key_name_admin(usr)] banned [key_name_admin(M)] from [msg] for [mins] minutes"), 1)
|
||||
to_chat(M, "<span class='filter_system'>[span_red("<BIG><B>You have been jobbanned by [usr.client.ckey] from: [msg].</B></BIG>")]</span>")
|
||||
to_chat(M, "<span class='filter_system'>[span_red("<B>The reason is: [reason]</B>")]</span>")
|
||||
to_chat(M, "<span class='filter_system'>[span_red("This jobban will be lifted in [mins] minutes.")]</span>")
|
||||
href_list["jobban2"] = 1 // lets it fall through and refresh
|
||||
return 1
|
||||
if("No")
|
||||
@@ -825,10 +825,10 @@
|
||||
if(!msg) msg = job
|
||||
else msg += ", [job]"
|
||||
notes_add(M.ckey, "Banned from [msg] - [reason]", usr)
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] banned [key_name_admin(M)] from [msg]</font>", 1)
|
||||
to_chat(M, "<span class='filter_system'><font color='red'><BIG><B>You have been jobbanned by [usr.client.ckey] from: [msg].</B></BIG></font></span>")
|
||||
to_chat(M, "<span class='filter_system'><font color='red'><B>The reason is: [reason]</B></font></span>")
|
||||
to_chat(M, "<span class='filter_system'><font color='red'>Jobban can be lifted only upon request.</font></span>")
|
||||
message_admins(span_blue("[key_name_admin(usr)] banned [key_name_admin(M)] from [msg]"), 1)
|
||||
to_chat(M, "<span class='filter_system'>[span_red("<BIG><B>You have been jobbanned by [usr.client.ckey] from: [msg].</B></BIG>")]</span>")
|
||||
to_chat(M, "<span class='filter_system'>[span_red("<B>The reason is: [reason]</B>")]</span>")
|
||||
to_chat(M, "<span class='filter_system'>[span_red("Jobban can be lifted only upon request.")]</span>")
|
||||
href_list["jobban2"] = 1 // lets it fall through and refresh
|
||||
return 1
|
||||
if("Cancel")
|
||||
@@ -858,7 +858,7 @@
|
||||
else
|
||||
continue
|
||||
if(msg)
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] unbanned [key_name_admin(M)] from [msg]</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] unbanned [key_name_admin(M)] from [msg]"), 1)
|
||||
to_chat(M, "<span class='filter_system danger'><BIG>You have been un-jobbanned by [usr.client.ckey] from [msg].</BIG></span>")
|
||||
href_list["jobban2"] = 1 // lets it fall through and refresh
|
||||
return 1
|
||||
@@ -875,7 +875,7 @@
|
||||
|
||||
to_chat(M, span("filter_system critical", "You have been kicked from the server: [reason]"))
|
||||
log_admin("[key_name(usr)] booted [key_name(M)] for reason: '[reason]'.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] booted [key_name_admin(M)] for reason '[reason]'.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] booted [key_name_admin(M)] for reason '[reason]'."), 1)
|
||||
//M.client = null
|
||||
admin_action_message(usr.key, M.key, "kicked", reason, 0) //VOREStation Add
|
||||
qdel(M.client)
|
||||
@@ -887,7 +887,7 @@
|
||||
if(t)
|
||||
if((tgui_alert(usr, "Do you want to unjobban [t]?","Unjobban confirmation", list("Yes", "No")) == "Yes") && t) //No more misclicks! Unless you do it twice.
|
||||
log_admin("[key_name(usr)] removed [t]")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] removed [t]</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] removed [t]"), 1)
|
||||
jobban_remove(t)
|
||||
href_list["ban"] = 1 // lets it fall through and refresh
|
||||
var/t_split = splittext(t, " - ")
|
||||
@@ -934,7 +934,7 @@
|
||||
else
|
||||
to_chat(M, "<span class='filter_system warning'>No ban appeals URL has been set.</span>")
|
||||
log_admin("[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis will be removed in [mins] minutes.")
|
||||
message_admins("<font color='blue'>[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis will be removed in [mins] minutes.</font>")
|
||||
message_admins(span_blue("[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis will be removed in [mins] minutes."))
|
||||
var/datum/admin_help/AH = M.client ? M.client.current_ticket : null
|
||||
if(AH)
|
||||
AH.Resolve()
|
||||
@@ -960,7 +960,7 @@
|
||||
ban_unban_log_save("[usr.client.ckey] has permabanned [M.ckey]. - Reason: [reason] - This is a permanent ban.")
|
||||
notes_add(M.ckey,"[usr.client.ckey] has permabanned [M.ckey]. - Reason: [reason] - This is a permanent ban.",usr)
|
||||
log_admin("[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis is a permanent ban.")
|
||||
message_admins("<font color='blue'>[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis is a permanent ban.</font>")
|
||||
message_admins(span_blue("[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis is a permanent ban."))
|
||||
feedback_inc("ban_perma",1)
|
||||
DB_ban_record(BANTYPE_PERMA, M, -1, reason)
|
||||
var/datum/admin_help/AH = M.client ? M.client.current_ticket : null
|
||||
@@ -1018,8 +1018,8 @@
|
||||
return tgui_alert_async(usr, "The game has already started.")
|
||||
master_mode = href_list["c_mode2"]
|
||||
log_admin("[key_name(usr)] set the mode as [config.mode_names[master_mode]].")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] set the mode as [config.mode_names[master_mode]].</font>", 1)
|
||||
to_world("<font color='blue'><b>The mode is now: [config.mode_names[master_mode]]</b></font>")
|
||||
message_admins(span_blue("[key_name_admin(usr)] set the mode as [config.mode_names[master_mode]]."), 1)
|
||||
to_world(span_blue("<b>The mode is now: [config.mode_names[master_mode]]</b>"))
|
||||
Game() // updates the main game menu
|
||||
world.save_mode(master_mode)
|
||||
.(href, list("c_mode"=1))
|
||||
@@ -1033,7 +1033,7 @@
|
||||
return tgui_alert_async(usr, "The game mode has to be secret!")
|
||||
secret_force_mode = href_list["f_secret2"]
|
||||
log_admin("[key_name(usr)] set the forced secret mode as [secret_force_mode].")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] set the forced secret mode as [secret_force_mode].</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] set the forced secret mode as [secret_force_mode]."), 1)
|
||||
Game() // updates the main game menu
|
||||
.(href, list("f_secret"=1))
|
||||
|
||||
@@ -1046,7 +1046,7 @@
|
||||
return
|
||||
|
||||
log_admin("[key_name(usr)] attempting to monkeyize [key_name(H)]")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] attempting to monkeyize [key_name_admin(H)]</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] attempting to monkeyize [key_name_admin(H)]"), 1)
|
||||
H.monkeyize()
|
||||
|
||||
else if(href_list["corgione"])
|
||||
@@ -1058,7 +1058,7 @@
|
||||
return
|
||||
|
||||
log_admin("[key_name(usr)] attempting to corgize [key_name(H)]")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] attempting to corgize [key_name_admin(H)]</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] attempting to corgize [key_name_admin(H)]"), 1)
|
||||
H.corgize()
|
||||
|
||||
else if(href_list["forcespeech"])
|
||||
@@ -1073,7 +1073,7 @@
|
||||
M.say(speech)
|
||||
speech = sanitize(speech) // Nah, we don't trust them
|
||||
log_admin("[key_name(usr)] forced [key_name(M)] to say: [speech]")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] forced [key_name_admin(M)] to say: [speech]</font>")
|
||||
message_admins(span_blue("[key_name_admin(usr)] forced [key_name_admin(M)] to say: [speech]"))
|
||||
|
||||
else if(href_list["sendtoprison"])
|
||||
if(!check_rights(R_ADMIN)) return
|
||||
@@ -1113,7 +1113,7 @@
|
||||
|
||||
to_chat(M, "<span class='filter_system warning'>You have been sent to the prison station!</span>")
|
||||
log_admin("[key_name(usr)] sent [key_name(M)] to the prison station.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] sent [key_name_admin(M)] to the prison station.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] sent [key_name_admin(M)] to the prison station."), 1)
|
||||
|
||||
else if(href_list["sendbacktolobby"])
|
||||
if(!check_rights(R_ADMIN))
|
||||
@@ -1249,7 +1249,7 @@
|
||||
|
||||
if(config.allow_admin_rev)
|
||||
L.revive()
|
||||
message_admins("<font color='red'>Admin [key_name_admin(usr)] healed / revived [key_name_admin(L)]!</font>", 1)
|
||||
message_admins(span_red("Admin [key_name_admin(usr)] healed / revived [key_name_admin(L)]!"), 1)
|
||||
log_admin("[key_name(usr)] healed / Rrvived [key_name(L)]")
|
||||
else
|
||||
to_chat(usr, "<span class='filter_adminlog filter_warning'>Admin Rejuvinates have been disabled</span>")
|
||||
@@ -1262,7 +1262,7 @@
|
||||
to_chat(usr, "<span class='filter_adminlog'>This can only be used on instances of type /mob/living/carbon/human</span>")
|
||||
return
|
||||
|
||||
message_admins("<font color='red'>Admin [key_name_admin(usr)] AIized [key_name_admin(H)]!</font>", 1)
|
||||
message_admins(span_red("Admin [key_name_admin(usr)] AIized [key_name_admin(H)]!"), 1)
|
||||
log_admin("[key_name(usr)] AIized [key_name(H)]")
|
||||
H.AIize()
|
||||
|
||||
@@ -1402,7 +1402,7 @@
|
||||
|
||||
//Job + antagonist
|
||||
if(M.mind)
|
||||
special_role_description = "Role: <b>[M.mind.assigned_role]</b>; Antagonist: <font color='red'><b>[M.mind.special_role]</b></font>; Has been rev: [(M.mind.has_been_rev)?"Yes":"No"]"
|
||||
special_role_description = "Role: <b>[M.mind.assigned_role]</b>; Antagonist: [span_red("<b>[M.mind.special_role]</b>")]; Has been rev: [(M.mind.has_been_rev)?"Yes":"No"]"
|
||||
else
|
||||
special_role_description = "Role: <i>Mind datum missing</i> Antagonist: <i>Mind datum missing</i>; Has been rev: <i>Mind datum missing</i>;"
|
||||
|
||||
@@ -1412,8 +1412,8 @@
|
||||
var/status
|
||||
switch (M.stat)
|
||||
if (0) status = "Alive"
|
||||
if (1) status = "<font color='orange'><b>Unconscious</b></font>"
|
||||
if (2) status = "<font color='red'><b>Dead</b></font>"
|
||||
if (1) status = span_orange("<b>Unconscious</b>")
|
||||
if (2) status = span_red("<b>Dead</b>")
|
||||
health_description = "Status = [status]"
|
||||
health_description += "<BR>Oxy: [L.getOxyLoss()] - Tox: [L.getToxLoss()] - Fire: [L.getFireLoss()] - Brute: [L.getBruteLoss()] - Clone: [L.getCloneLoss()] - Brain: [L.getBrainLoss()]"
|
||||
else
|
||||
@@ -1422,7 +1422,7 @@
|
||||
//Gener
|
||||
switch(M.gender)
|
||||
if(MALE,FEMALE) gender_description = "[M.gender]"
|
||||
else gender_description = "<font color='red'><b>[M.gender]</b></font>"
|
||||
else gender_description = span_red("<b>[M.gender]</b>")
|
||||
|
||||
to_chat(src.owner, "<span class='filter_adminlog'><b>Info about [M.name]:</b><br>\
|
||||
Mob type = [M.type]; Gender = [gender_description] Damage = [health_description]<br>\
|
||||
|
||||
@@ -1046,7 +1046,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
|
||||
else if(char == "'")
|
||||
if(word != "")
|
||||
to_chat(usr, "<font color='red'>SDQL2: You have an error in your SDQL syntax, unexpected ' in query: \"<font color=gray>[query_text]</font>\" following \"<font color=gray>[word]</font>\". Please check your syntax, and try again.</font>")
|
||||
to_chat(usr, span_red("SDQL2: You have an error in your SDQL syntax, unexpected ' in query: \"[span_gray("[query_text]")]\" following \"[span_gray("[word]")]\". Please check your syntax, and try again."))
|
||||
return null
|
||||
|
||||
word = "'"
|
||||
@@ -1066,7 +1066,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
word += char
|
||||
|
||||
if(i > len)
|
||||
to_chat(usr, "<font color='red'>SDQL2: You have an error in your SDQL syntax, unmatched ' in query: \"<font color=gray>[query_text]</font>\". Please check your syntax, and try again.</font>")
|
||||
to_chat(usr, span_red("SDQL2: You have an error in your SDQL syntax, unmatched ' in query: \"[span_gray("[query_text]")]\". Please check your syntax, and try again."))
|
||||
return null
|
||||
|
||||
query_list += "[word]'"
|
||||
@@ -1074,7 +1074,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
|
||||
else if(char == "\"")
|
||||
if(word != "")
|
||||
to_chat(usr, "<font color='red'>SDQL2: You have an error in your SDQL syntax, unexpected \" in query: \"<font color=gray>[query_text]</font>\" following \"<font color=gray>[word]</font>\". Please check your syntax, and try again.</font>")
|
||||
to_chat(usr, span_red("SDQL2: You have an error in your SDQL syntax, unexpected \" in query: \"[span_gray("[query_text]")]\" following \"[span_gray("[word]")]\". Please check your syntax, and try again."))
|
||||
return null
|
||||
|
||||
word = "\""
|
||||
@@ -1094,7 +1094,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
word += char
|
||||
|
||||
if(i > len)
|
||||
to_chat(usr, "<font color='red'>SDQL2: You have an error in your SDQL syntax, unmatched \" in query: \"<font color=gray>[query_text]</font>\". Please check your syntax, and try again.</font>")
|
||||
to_chat(usr, span_red("SDQL2: You have an error in your SDQL syntax, unmatched \" in query: \"[span_gray("[query_text]")]\". Please check your syntax, and try again."))
|
||||
return null
|
||||
|
||||
query_list += "[word]\""
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+695
-695
File diff suppressed because it is too large
Load Diff
@@ -24,16 +24,16 @@
|
||||
set category = null
|
||||
|
||||
if(!src.holder)
|
||||
to_chat(src, "<font color='red'>Only Admins may use this command.</font>")
|
||||
to_chat(src, span_red("Only Admins may use this command."))
|
||||
return
|
||||
|
||||
var/client/target = tgui_input_list(src,"Choose somebody to grant access to the server's runtime logs (permissions expire at the end of each round):","Grant Permissions", GLOB.clients)
|
||||
if(!istype(target,/client))
|
||||
to_chat(src, "<font color='red'>Error: giveruntimelog(): Client not found.</font>")
|
||||
to_chat(src, span_red("Error: giveruntimelog(): Client not found."))
|
||||
return
|
||||
|
||||
target.verbs |= /client/proc/getruntimelog
|
||||
to_chat(target, "<font color='red'>You have been granted access to runtime logs. Please use them responsibly or risk being banned.</font>")
|
||||
to_chat(target, span_red("You have been granted access to runtime logs. Please use them responsibly or risk being banned."))
|
||||
return
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
if( fexists(path) )
|
||||
src << run( file(path) )
|
||||
else
|
||||
to_chat(src, "<font color='red'>Error: view_txt_log(): File not found/Invalid path([path]).</font>")
|
||||
to_chat(src, span_red("Error: view_txt_log(): File not found/Invalid path([path])."))
|
||||
return
|
||||
feedback_add_details("admin_verb","VTL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
return
|
||||
|
||||
@@ -218,7 +218,7 @@ var/list/debug_verbs = list (
|
||||
var/turf/simulated/location = get_turf(usr)
|
||||
|
||||
if(!istype(location, /turf/simulated)) // We're in space, let's not cause runtimes.
|
||||
to_chat(usr, "<font color='red'>this debug tool cannot be used from space</font>")
|
||||
to_chat(usr, span_red("this debug tool cannot be used from space"))
|
||||
return
|
||||
|
||||
var/icon/red = new('icons/misc/debug_group.dmi', "red") //created here so we don't have to make thousands of these.
|
||||
@@ -227,10 +227,10 @@ var/list/debug_verbs = list (
|
||||
|
||||
if(!usedZAScolors)
|
||||
to_chat(usr, "ZAS Test Colors")
|
||||
to_chat(usr, "Green = Zone you are standing in")
|
||||
to_chat(usr, "Blue = Connected zone to the zone you are standing in")
|
||||
to_chat(usr, "Yellow = A zone that is connected but not one adjacent to your connected zone")
|
||||
to_chat(usr, "Red = Not connected")
|
||||
to_chat(usr, "[span_green("Green")] = Zone you are standing in")
|
||||
to_chat(usr, "[span_blue("Blue")] = Connected zone to the zone you are standing in")
|
||||
to_chat(usr, "[span_yellow("Yellow")] = A zone that is connected but not one adjacent to your connected zone")
|
||||
to_chat(usr, "[span_red("Red")] = Not connected")
|
||||
usedZAScolors = 1
|
||||
|
||||
testZAScolors_zones += location.zone
|
||||
@@ -362,7 +362,7 @@ var/global/prevent_airgroup_regroup = 0
|
||||
set category = "Mapping"
|
||||
set name = "Regroup All Airgroups Attempt"
|
||||
|
||||
to_chat(usr, "<font color='red'>Proc disabled.</font>") //Why not.. Delete the procs instead?
|
||||
to_chat(usr, span_red("Proc disabled.")) //Why not.. Delete the procs instead?
|
||||
|
||||
/*prevent_airgroup_regroup = 0
|
||||
for(var/datum/air_group/AG in air_master.air_groups)
|
||||
@@ -373,7 +373,7 @@ var/global/prevent_airgroup_regroup = 0
|
||||
set category = "Mapping"
|
||||
set name = "Kill pipe processing"
|
||||
|
||||
to_chat(usr, "<font color='red'>Proc disabled.</font>")
|
||||
to_chat(usr, span_red("Proc disabled."))
|
||||
|
||||
/*pipe_processing_killed = !pipe_processing_killed
|
||||
if(pipe_processing_killed)
|
||||
@@ -385,7 +385,7 @@ var/global/prevent_airgroup_regroup = 0
|
||||
set category = "Mapping"
|
||||
set name = "Kill air processing"
|
||||
|
||||
to_chat(usr, "<font color='red'>Proc disabled.</font>")
|
||||
to_chat(usr, span_red("Proc disabled."))
|
||||
|
||||
/*air_processing_killed = !air_processing_killed
|
||||
if(air_processing_killed)
|
||||
@@ -399,7 +399,7 @@ var/global/say_disabled = 0
|
||||
set category = "Mapping"
|
||||
set name = "Disable all communication verbs"
|
||||
|
||||
to_chat(usr, "<font color='red'>Proc disabled.</font>")
|
||||
to_chat(usr, span_red("Proc disabled."))
|
||||
|
||||
/*say_disabled = !say_disabled
|
||||
if(say_disabled)
|
||||
@@ -414,7 +414,7 @@ var/global/movement_disabled_exception //This is the client that calls the proc,
|
||||
set category = "Mapping"
|
||||
set name = "Disable all movement"
|
||||
|
||||
to_chat(usr, "<font color='red'>Proc disabled.</font>")
|
||||
to_chat(usr, span_red("Proc disabled."))
|
||||
|
||||
/*movement_disabled = !movement_disabled
|
||||
if(movement_disabled)
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
set name = "Modify Robot Module"
|
||||
set desc = "Allows to add or remove modules to/from robots."
|
||||
set category = "Admin"
|
||||
if(!check_rights(R_ADMIN, R_FUN, R_VAREDIT))
|
||||
if(!check_rights(R_ADMIN|R_FUN|R_VAREDIT))
|
||||
return
|
||||
|
||||
if(!istype(target) || !target.module)
|
||||
@@ -12,12 +12,16 @@
|
||||
if(!target.module.modules)
|
||||
return
|
||||
|
||||
var/list/modification_options = list(MODIFIY_ROBOT_MODULE_ADD,MODIFIY_ROBOT_MODULE_REMOVE, MODIFIY_ROBOT_APPLY_UPGRADE, MODIFIY_ROBOT_RADIOC_ADD, MODIFIY_ROBOT_RADIOC_REMOVE, MODIFIY_ROBOT_COMP_ADD, MODIFIY_ROBOT_COMP_REMOVE, MODIFIY_ROBOT_RESET_MODULE)
|
||||
var/list/modification_options = list(MODIFIY_ROBOT_MODULE_ADD,MODIFIY_ROBOT_MODULE_REMOVE, MODIFIY_ROBOT_APPLY_UPGRADE, MODIFIY_ROBOT_SUPP_ADD, MODIFIY_ROBOT_SUPP_REMOVE, MODIFIY_ROBOT_RADIOC_ADD, MODIFIY_ROBOT_RADIOC_REMOVE, MODIFIY_ROBOT_COMP_ADD, MODIFIY_ROBOT_COMP_REMOVE, MODIFIY_ROBOT_RESET_MODULE)
|
||||
|
||||
while(TRUE)
|
||||
var/modification_choice = tgui_input_list(usr, "Select if you want to add or remove a module to/from [target]","Choice", modification_options)
|
||||
if(!modification_choice || modification_choice == "Cancel")
|
||||
break
|
||||
return
|
||||
|
||||
if(!target.module || !target.module.modules)
|
||||
to_chat(usr, "<span class='danger'>[target] was recently reset, you must wait until module selection has been completed before continuing modifying.</span>")
|
||||
continue
|
||||
|
||||
log_and_message_admins("[key_name(src)] has used MODIFYROBOT ([modification_choice]) on [key_name(target)].")
|
||||
feedback_add_details("admin_verb","MODIFYROBOT") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
@@ -105,7 +109,8 @@
|
||||
if(MODIFIY_ROBOT_APPLY_UPGRADE)
|
||||
var/list/upgrades = list()
|
||||
for(var/datum/design/item/prosfab/robot_upgrade/upgrade)
|
||||
upgrades[initial(upgrade.name)] = initial(upgrade.build_path)
|
||||
if(!(target.has_upgrade(initial(upgrade.build_path))))
|
||||
upgrades[initial(upgrade.name)] = initial(upgrade.build_path)
|
||||
while(TRUE)
|
||||
var/selected_module_upgrade = tgui_input_list(usr, "Please select the module to remove", "Upgrades", upgrades)
|
||||
if(!selected_module_upgrade || selected_module_upgrade == "Cancel")
|
||||
@@ -114,9 +119,16 @@
|
||||
if(tgui_alert(usr, "Are you sure that you want to install [selected_module_upgrade] and reset the robot's module?","Confirm",list("Yes","No"))=="No")
|
||||
continue
|
||||
var/new_upgrade = upgrades[capitalize(selected_module_upgrade)]
|
||||
target.module.supported_upgrades += new_upgrade
|
||||
upgrades.Remove(selected_module_upgrade)
|
||||
var/obj/item/borg/upgrade/U = new new_upgrade(src)
|
||||
if(selected_module_upgrade == "Rename Module")
|
||||
var/obj/item/borg/upgrade/utility/rename/UN = U
|
||||
var/new_name = sanitizeSafe(tgui_input_text(usr, "Enter new robot name", "Robot Reclassification", UN.heldname, MAX_NAME_LEN), MAX_NAME_LEN)
|
||||
if(new_name)
|
||||
UN.heldname = new_name
|
||||
U = UN
|
||||
if(istype(U, /obj/item/borg/upgrade/restricted))
|
||||
target.module.supported_upgrades |= new_upgrade
|
||||
if(U.action(target))
|
||||
to_chat(usr, "<span class='danger'>You apply the [U] to [target]!</span>")
|
||||
usr.drop_item()
|
||||
@@ -143,6 +155,30 @@
|
||||
modkits.Remove(selected_ka_upgrade)
|
||||
M.install(kin, target)
|
||||
capacity = kin.get_remaining_mod_capacity()
|
||||
if(MODIFIY_ROBOT_SUPP_ADD)
|
||||
var/list/whitelisted_upgrades = list()
|
||||
for(var/datum/design/item/prosfab/robot_upgrade/restricted/upgrade)
|
||||
if(!(initial(upgrade.build_path) in target.module.supported_upgrades))
|
||||
whitelisted_upgrades[initial(upgrade.name)] = initial(upgrade.build_path)
|
||||
while(TRUE)
|
||||
var/selected_upgrade_type = tgui_input_list(usr, "Please select which upgrade you want this module to support", "Upgrades", whitelisted_upgrades)
|
||||
if(!selected_upgrade_type || selected_upgrade_type == "Cancel")
|
||||
break
|
||||
var/upgrade_path = whitelisted_upgrades[capitalize(selected_upgrade_type)]
|
||||
whitelisted_upgrades.Remove(selected_upgrade_type)
|
||||
target.module.supported_upgrades |= upgrade_path
|
||||
if(MODIFIY_ROBOT_SUPP_REMOVE)
|
||||
var/list/whitelisted_upgrades = list()
|
||||
for(var/datum/design/item/prosfab/robot_upgrade/restricted/upgrade)
|
||||
if((initial(upgrade.build_path) in target.module.supported_upgrades))
|
||||
whitelisted_upgrades[initial(upgrade.name)] = initial(upgrade.build_path)
|
||||
while(TRUE)
|
||||
var/selected_upgrade_type = tgui_input_list(usr, "Please select which upgrade you want this module to support", "Upgrades", whitelisted_upgrades)
|
||||
if(!selected_upgrade_type || selected_upgrade_type == "Cancel")
|
||||
break
|
||||
var/upgrade_path = whitelisted_upgrades[capitalize(selected_upgrade_type)]
|
||||
whitelisted_upgrades.Remove(selected_upgrade_type)
|
||||
target.module.supported_upgrades -= upgrade_path
|
||||
if(MODIFIY_ROBOT_RADIOC_ADD)
|
||||
var/list/available_channels = radiochannels.Copy()
|
||||
for(var/has_channel in target.radio.channels)
|
||||
@@ -240,6 +276,6 @@
|
||||
to_chat(usr, "<span class='danger'>You removed \"[C]\" from [target]</span>")
|
||||
if(MODIFIY_ROBOT_RESET_MODULE)
|
||||
if(tgui_alert(usr, "Are you sure that you want to reset the entire module?","Confirm",list("Yes","No"))=="No")
|
||||
return
|
||||
continue
|
||||
target.module_reset()
|
||||
to_chat(usr, "<span class='danger'>You resetted [target]'s module selection.</span>")
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
set name = "Pray"
|
||||
|
||||
if(say_disabled) //This is here to try to identify lag problems
|
||||
to_chat(usr, "<font color='red'>Speech is currently admin-disabled.</font>")
|
||||
to_chat(usr, span_red("Speech is currently admin-disabled."))
|
||||
return
|
||||
|
||||
var/raw_msg = sanitize(tgui_input_text(usr, "Prayers are sent to staff but do not open tickets or go to Discord. If you have a technical difficulty or an event/spice idea/hook - please ahelp instead. Thank you!", "Pray", null, MAX_MESSAGE_LEN))
|
||||
@@ -13,11 +13,11 @@
|
||||
if(raw_msg)
|
||||
client.handle_spam_prevention(MUTE_PRAY)
|
||||
if(usr.client.prefs.muted & MUTE_PRAY)
|
||||
to_chat(usr, "<font color='red'> You cannot pray (muted).</font>")
|
||||
to_chat(usr, span_red("You cannot pray (muted)."))
|
||||
return
|
||||
|
||||
var/icon/cross = icon('icons/obj/storage.dmi',"bible")
|
||||
var/msg = "<span class='filter_pray'><font color='blue'>\icon[cross][bicon(cross)] <b><font color=purple>PRAY: </font>[key_name(src, 1)] [ADMIN_QUE(src)] [ADMIN_PP(src)] [ADMIN_VV(src)] [ADMIN_SM(src)] ([admin_jump_link(src, src)]) [ADMIN_CA(src)] [ADMIN_SC(src)] [ADMIN_SMITE(src)]:</b> [raw_msg]</font></span>"
|
||||
var/msg = "<span class='filter_pray'>" + span_blue("\icon[cross][bicon(cross)] <b>" + span_purple("PRAY: ") + "[key_name(src, 1)] [ADMIN_QUE(src)] [ADMIN_PP(src)] [ADMIN_VV(src)] [ADMIN_SM(src)] ([admin_jump_link(src, src)]) [ADMIN_CA(src)] [ADMIN_SC(src)] [ADMIN_SMITE(src)]:</b> [raw_msg]") + "</span>"
|
||||
|
||||
for(var/client/C in GLOB.admins)
|
||||
if(R_ADMIN|R_EVENT & C.holder.rights)
|
||||
@@ -30,14 +30,14 @@
|
||||
log_pray(raw_msg, src)
|
||||
|
||||
/proc/CentCom_announce(var/msg, var/mob/Sender, var/iamessage)
|
||||
msg = "<font color='blue'><b><font color=orange>[uppertext(using_map.boss_short)]M[iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] [ADMIN_PP(Sender)] [ADMIN_VV(Sender)] [ADMIN_SM(Sender)] ([admin_jump_link(Sender)]) [ADMIN_CA(Sender)] [ADMIN_BSA(Sender)] [ADMIN_CENTCOM_REPLY(Sender)]:</b> [msg]</font>"
|
||||
msg = span_blue("<b>" + span_orange("[uppertext(using_map.boss_short)]M[iamessage ? " IA" : ""]:") + "[key_name(Sender, 1)] [ADMIN_PP(Sender)] [ADMIN_VV(Sender)] [ADMIN_SM(Sender)] ([admin_jump_link(Sender)]) [ADMIN_CA(Sender)] [ADMIN_BSA(Sender)] [ADMIN_CENTCOM_REPLY(Sender)]:</b> [msg]")
|
||||
for(var/client/C in GLOB.admins) //VOREStation Edit - GLOB admins
|
||||
if(R_ADMIN|R_EVENT & C.holder.rights)
|
||||
to_chat(C,msg)
|
||||
C << 'sound/machines/signal.ogg'
|
||||
|
||||
/proc/Syndicate_announce(var/msg, var/mob/Sender)
|
||||
msg = "<font color='blue'><b><font color=crimson>ILLEGAL:</font>[key_name(Sender, 1)] [ADMIN_PP(Sender)] [ADMIN_VV(Sender)] [ADMIN_SM(Sender)] ([admin_jump_link(Sender)]) [ADMIN_CA(Sender)] [ADMIN_BSA(Sender)] [ADMIN_SYNDICATE_REPLY(Sender)]:</b> [msg]</font>"
|
||||
msg = span_blue("<b>" + span_crimson("ILLEGAL:") + "[key_name(Sender, 1)] [ADMIN_PP(Sender)] [ADMIN_VV(Sender)] [ADMIN_SM(Sender)] ([admin_jump_link(Sender)]) [ADMIN_CA(Sender)] [ADMIN_BSA(Sender)] [ADMIN_SYNDICATE_REPLY(Sender)]:</b> [msg]")
|
||||
for(var/client/C in GLOB.admins) //VOREStation Edit - GLOB admins
|
||||
if(R_ADMIN|R_EVENT & C.holder.rights)
|
||||
to_chat(C,msg)
|
||||
|
||||
@@ -39,9 +39,9 @@
|
||||
prisoner.equip_to_slot_or_del(new /obj/item/clothing/under/color/prison(prisoner), slot_w_uniform)
|
||||
prisoner.equip_to_slot_or_del(new /obj/item/clothing/shoes/orange(prisoner), slot_shoes)
|
||||
spawn(50)
|
||||
to_chat(M, "<font color='red'>You have been sent to the prison station!</font>")
|
||||
to_chat(M, span_red("You have been sent to the prison station!"))
|
||||
log_admin("[key_name(usr)] sent [key_name(M)] to the prison station.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] sent [key_name_admin(M)] to the prison station.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] sent [key_name_admin(M)] to the prison station."), 1)
|
||||
feedback_add_details("admin_verb","PRISON") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
//Allows staff to determine who the newer players are.
|
||||
@@ -123,7 +123,7 @@
|
||||
|
||||
to_world("[msg]")
|
||||
log_admin("GlobalNarrate: [key_name(usr)] : [msg]")
|
||||
message_admins("<font color='blue'><B> GlobalNarrate: [key_name_admin(usr)] : [msg]<BR></B></font>", 1)
|
||||
message_admins(span_blue("<B> GlobalNarrate: [key_name_admin(usr)] : [msg]<BR></B>"), 1)
|
||||
feedback_add_details("admin_verb","GLN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
/client/proc/cmd_admin_direct_narrate(var/mob/M) // Targetted narrate -- TLE
|
||||
@@ -161,7 +161,7 @@
|
||||
return
|
||||
|
||||
M.status_flags ^= GODMODE
|
||||
to_chat(usr, "<font color='blue'> Toggled [(M.status_flags & GODMODE) ? "ON" : "OFF"]</font>")
|
||||
to_chat(usr, span_blue("Toggled [(M.status_flags & GODMODE) ? "ON" : "OFF"]"))
|
||||
|
||||
log_admin("[key_name(usr)] has toggled [key_name(M)]'s nodamage to [(M.status_flags & GODMODE) ? "On" : "Off"]")
|
||||
var/msg = "[key_name_admin(usr)] has toggled [ADMIN_LOOKUPFLW(M)]'s nodamage to [(M.status_flags & GODMODE) ? "On" : "Off"]"
|
||||
@@ -178,12 +178,12 @@
|
||||
if(!usr || !usr.client)
|
||||
return
|
||||
if(!usr.client.holder)
|
||||
to_chat(usr, "<font color='red'>Error: cmd_admin_mute: You don't have permission to do this.</font>")
|
||||
to_chat(usr, span_red("Error: cmd_admin_mute: You don't have permission to do this."))
|
||||
return
|
||||
if(!M.client)
|
||||
to_chat(usr, "<font color='red'>Error: cmd_admin_mute: This mob doesn't have a client tied to it.</font>")
|
||||
to_chat(usr, span_red("Error: cmd_admin_mute: This mob doesn't have a client tied to it."))
|
||||
if(M.client.holder)
|
||||
to_chat(usr, "<font color='red'>Error: cmd_admin_mute: You cannot mute an admin/mod.</font>")
|
||||
to_chat(usr, span_red("Error: cmd_admin_mute: You cannot mute an admin/mod."))
|
||||
if(!M.client)
|
||||
return
|
||||
if(M.client.holder)
|
||||
@@ -324,18 +324,18 @@ Ccomp's first proc.
|
||||
if(g.antagHUD)
|
||||
g.antagHUD = 0 // Disable it on those that have it enabled
|
||||
g.has_enabled_antagHUD = 2 // We'll allow them to respawn
|
||||
to_chat(g, "<font color='red'><B>The Administrator has disabled AntagHUD </B></font>")
|
||||
to_chat(g, span_red("<B>The Administrator has disabled AntagHUD </B>"))
|
||||
config.antag_hud_allowed = 0
|
||||
to_chat(src, "<font color='red'><B>AntagHUD usage has been disabled</B></font>")
|
||||
to_chat(src, span_red("<B>AntagHUD usage has been disabled</B>"))
|
||||
action = "disabled"
|
||||
else
|
||||
for(var/mob/observer/dead/g in get_ghosts())
|
||||
if(!g.client.holder) // Add the verb back for all non-admin ghosts
|
||||
g.verbs += /mob/observer/dead/verb/toggle_antagHUD
|
||||
to_chat(g, "<font color='blue'><B>The Administrator has enabled AntagHUD </B></font>") // Notify all observers they can now use AntagHUD
|
||||
to_chat(g, span_blue("<B>The Administrator has enabled AntagHUD </B>")) // Notify all observers they can now use AntagHUD
|
||||
config.antag_hud_allowed = 1
|
||||
action = "enabled"
|
||||
to_chat(src, "<font color='blue'><B>AntagHUD usage has been enabled</B></font>")
|
||||
to_chat(src, span_blue("<B>AntagHUD usage has been enabled</B>"))
|
||||
|
||||
|
||||
log_admin("[key_name(usr)] has [action] antagHUD usage for observers")
|
||||
@@ -354,19 +354,19 @@ Ccomp's first proc.
|
||||
var/action=""
|
||||
if(config.antag_hud_restricted)
|
||||
for(var/mob/observer/dead/g in get_ghosts())
|
||||
to_chat(g, "<font color='blue'><B>The administrator has lifted restrictions on joining the round if you use AntagHUD</B></font>")
|
||||
to_chat(g, span_blue("<B>The administrator has lifted restrictions on joining the round if you use AntagHUD</B>"))
|
||||
action = "lifted restrictions"
|
||||
config.antag_hud_restricted = 0
|
||||
to_chat(src, "<font color='blue'><B>AntagHUD restrictions have been lifted</B></font>")
|
||||
to_chat(src, span_blue("<B>AntagHUD restrictions have been lifted</B>"))
|
||||
else
|
||||
for(var/mob/observer/dead/g in get_ghosts())
|
||||
to_chat(g, "<font color='red'><B>The administrator has placed restrictions on joining the round if you use AntagHUD</B></font>")
|
||||
to_chat(g, "<font color='red'><B>Your AntagHUD has been disabled, you may choose to re-enabled it but will be under restrictions </B></font>")
|
||||
to_chat(g, span_red("<B>The administrator has placed restrictions on joining the round if you use AntagHUD</B>"))
|
||||
to_chat(g, span_red("<B>Your AntagHUD has been disabled, you may choose to re-enabled it but will be under restrictions </B>"))
|
||||
g.antagHUD = 0
|
||||
g.has_enabled_antagHUD = 0
|
||||
action = "placed restrictions"
|
||||
config.antag_hud_restricted = 1
|
||||
to_chat(src, "<font color='red'><B>AntagHUD restrictions have been enabled</B></font>")
|
||||
to_chat(src, span_red("<B>AntagHUD restrictions have been enabled</B>"))
|
||||
|
||||
log_admin("[key_name(usr)] has [action] on joining the round if they use AntagHUD")
|
||||
message_admins("Admin [key_name_admin(usr)] has [action] on joining the round if they use AntagHUD", 1)
|
||||
@@ -605,7 +605,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
else
|
||||
M.add_ion_law(input)
|
||||
for(var/mob/living/silicon/ai/O in mob_list)
|
||||
to_chat(O,input + "<font color='red'>... LAWS UPDATED!</font>")
|
||||
to_chat(O,input + span_red("... LAWS UPDATED!"))
|
||||
O.show_laws()
|
||||
|
||||
log_admin("Admin [key_name(usr)] has added a new AI law - [input]")
|
||||
@@ -660,7 +660,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
if("Yes")
|
||||
command_announcement.Announce(input, customname, new_sound = 'sound/AI/commandreport.ogg', msg_sanitized = 1);
|
||||
if("No")
|
||||
to_world("<font color='red'>New [using_map.company_name] Update available at all communication consoles.</font>")
|
||||
to_world(span_red("New [using_map.company_name] Update available at all communication consoles."))
|
||||
world << sound('sound/AI/commandreport.ogg')
|
||||
|
||||
log_admin("[key_name(src)] has created a command report: [input]")
|
||||
@@ -778,7 +778,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
mob.gib()
|
||||
|
||||
log_admin("[key_name(usr)] used gibself.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] used gibself.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] used gibself."), 1)
|
||||
feedback_add_details("admin_verb","GIBS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
/*
|
||||
/client/proc/cmd_manual_ban()
|
||||
@@ -935,7 +935,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
|
||||
feedback_add_details("admin_verb","CSHUT") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
log_admin("[key_name(usr)] admin-called the emergency shuttle.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] admin-called the emergency shuttle.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] admin-called the emergency shuttle."), 1)
|
||||
return
|
||||
|
||||
/client/proc/admin_cancel_shuttle()
|
||||
@@ -952,7 +952,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
emergency_shuttle.recall()
|
||||
feedback_add_details("admin_verb","CCSHUT") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
log_admin("[key_name(usr)] admin-recalled the emergency shuttle.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] admin-recalled the emergency shuttle.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] admin-recalled the emergency shuttle."), 1)
|
||||
|
||||
return
|
||||
|
||||
@@ -974,7 +974,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
set category = "Special Verbs"
|
||||
set name = "Attack Log"
|
||||
|
||||
to_chat(usr, "<font color='red'><b>Attack Log for [mob]</b></font>")
|
||||
to_chat(usr, span_red("<b>Attack Log for [mob]</b>"))
|
||||
for(var/t in M.attack_log)
|
||||
to_chat(usr,t)
|
||||
feedback_add_details("admin_verb","ATTL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
@@ -1006,7 +1006,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
message_admins("Admin [key_name_admin(usr)] has forced the players to have random appearances.", 1)
|
||||
|
||||
if(notifyplayers == "Yes")
|
||||
to_world("<font color='blue'><b>Admin [usr.key] has forced the players to have completely random identities!</font></b>")
|
||||
to_world(span_blue("<b>Admin [usr.key] has forced the players to have completely random identities!</b>"))
|
||||
|
||||
to_chat(usr, "<i>Remember: you can always disable the randomness by using the verb again, assuming the round hasn't started yet</i>.")
|
||||
|
||||
@@ -1161,4 +1161,4 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
if("Polite")
|
||||
new /obj/structure/drop_pod/polite(get_turf(usr), L, autoopen == "Yes" ? TRUE : FALSE)
|
||||
|
||||
feedback_add_details("admin_verb","DPD") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
feedback_add_details("admin_verb","DPD") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
set category = "Special Verbs"
|
||||
set name = "Spawn Character As Mob"
|
||||
set desc = "Spawn a specified ckey as a chosen mob."
|
||||
|
||||
|
||||
if(!holder)
|
||||
return
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
if(M.z == pos_z)
|
||||
to_chat(M, msg)
|
||||
log_admin("ZNarrate: [key_name(usr)] : [msg]")
|
||||
message_admins("<font color='blue'><B> ZNarrate: [key_name_admin(usr)] : [msg]<BR></B></font>", 1)
|
||||
message_admins(span_blue("<B> ZNarrate: [key_name_admin(usr)] : [msg]<BR></B>"), 1)
|
||||
feedback_add_details("admin_verb","GLNA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
/client/proc/toggle_vantag_hud(var/mob/target as mob)
|
||||
@@ -107,10 +107,10 @@
|
||||
target.vantag_hud = FALSE
|
||||
target.recalculate_vis()
|
||||
to_chat(src, "You removed the event HUD from [key_name(target)].")
|
||||
to_chat(target, "You no longer have the event HUD.")
|
||||
to_chat(target, "You no longer have the event HUD.")
|
||||
else
|
||||
target.vantag_hud = TRUE
|
||||
target.recalculate_vis()
|
||||
to_chat(src, "You gave the event HUD to [key_name(target)].")
|
||||
to_chat(target, "You now have the event HUD. Icons will appear next to characters indicating if they prefer to be killed(red crosshairs), devoured(belly), or kidnapped(blue crosshairs) by event characters.")
|
||||
to_chat(target, "You now have the event HUD. Icons will appear next to characters indicating if they prefer to be killed(red crosshairs), devoured(belly), or kidnapped(blue crosshairs) by event characters.")
|
||||
feedback_add_details("admin_verb","GREHud") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
set name = "Resize"
|
||||
set desc = "Resizes any living mob without any restrictions on size."
|
||||
set category = "Fun"
|
||||
if(!check_rights(R_ADMIN, R_FUN, R_VAREDIT))
|
||||
if(!check_rights(R_ADMIN|R_FUN|R_VAREDIT))
|
||||
return
|
||||
|
||||
var/size_multiplier = tgui_input_number(usr, "Input size multiplier.", "Resize", 1)
|
||||
|
||||
@@ -11,11 +11,11 @@ var/const/commandos_possible = 6 //if more Commandos are needed in the future
|
||||
return
|
||||
|
||||
if(!ticker)
|
||||
to_chat(usr, "<font color='red'>The game hasn't started yet!</font>")
|
||||
to_chat(usr, span_red("The game hasn't started yet!"))
|
||||
return
|
||||
|
||||
if(world.time < 6000)
|
||||
to_chat(usr, "<font color='red'>There are [(6000-world.time)/10] seconds remaining before it may be called.</font>")
|
||||
to_chat(usr, span_red("There are [(6000-world.time)/10] seconds remaining before it may be called."))
|
||||
return
|
||||
|
||||
var/datum/antagonist/deathsquad/team
|
||||
@@ -33,7 +33,7 @@ var/const/commandos_possible = 6 //if more Commandos are needed in the future
|
||||
return
|
||||
|
||||
if(team.deployed)
|
||||
to_chat(usr, "<font color='red'>Someone is already sending a team.</font>")
|
||||
to_chat(usr, span_red("Someone is already sending a team."))
|
||||
return
|
||||
|
||||
if(tgui_alert(usr, "Do you want to send in a strike team? Once enabled, this is irreversible.","Strike Team",list("Yes","No"))!="Yes")
|
||||
|
||||
@@ -14,9 +14,9 @@
|
||||
if(ticker.triai)
|
||||
ticker.triai = 0
|
||||
to_chat(usr, "Only one AI will be spawned at round start.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] has toggled off triple AIs at round start.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] has toggled off triple AIs at round start."), 1)
|
||||
else
|
||||
ticker.triai = 1
|
||||
to_chat(usr, "There will be an AI Triumvirate at round start.")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] has toggled on triple AIs at round start.</font>", 1)
|
||||
message_admins(span_blue("[key_name_admin(usr)] has toggled on triple AIs at round start."), 1)
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user