Admin Verb Datums MkIII | Now with functional command bar (#82511)

This commit is contained in:
Zephyr
2024-04-12 12:27:09 -07:00
committed by GitHub
parent e0d335b442
commit 7f8752be14
104 changed files with 1898 additions and 3287 deletions
+30 -96
View File
@@ -136,8 +136,7 @@
to_chat(usr, "[shuttle_console] was [shuttle_console.admin_controlled ? "locked" : "unlocked"].", confidential = TRUE)
else if(href_list["delay_round_end"])
// Permissions are checked in delay_round_end
delay_round_end()
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/delay_round_end)
else if(href_list["undelay_round_end"])
if(!check_rights(R_SERVER))
@@ -725,21 +724,10 @@
our_mob.AIize(our_mob.client, move)
else if(href_list["makerobot"])
if(!check_rights(R_SPAWN))
return
var/mob/our_mob = locate(href_list["makerobot"])
if(!istype(our_mob))
return
if(iscyborg(our_mob))
to_chat(usr, "That's already a cyborg.", confidential = TRUE)
return
usr.client.cmd_admin_robotize(our_mob)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/cmd_admin_robotize, locate(href_list["makerobot"]))
else if(href_list["adminplayeropts"])
var/mob/M = locate(href_list["adminplayeropts"])
show_player_panel(M)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/show_player_panel, locate(href_list["adminplayeropts"]))
else if(href_list["ppbyckey"])
var/target_ckey = href_list["ppbyckey"]
@@ -754,7 +742,7 @@
return
to_chat(usr, span_notice("Jumping to [target_ckey]'s new mob: [target_mob]!"))
show_player_panel(target_mob)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/show_player_panel, target_mob)
else if(href_list["adminplayerobservefollow"])
if(!isobserver(usr) && !check_rights(R_ADMIN))
@@ -771,20 +759,13 @@
AM.forceMove(get_turf(usr))
else if(href_list["adminplayerobservecoodjump"])
if(!isobserver(usr) && !check_rights(R_ADMIN))
return
if(isnewplayer(usr))
return
var/x = text2num(href_list["X"])
var/y = text2num(href_list["Y"])
var/z = text2num(href_list["Z"])
var/client/C = usr.client
if(!isobserver(usr))
C.admin_ghost()
sleep(0.2 SECONDS)
C.jumptocoord(x,y,z)
return SSadmin_verbs.dynamic_invoke_verb(
usr,
/datum/admin_verb/jump_to_coord,
text2num(href_list["X"]),
text2num(href_list["Y"]),
text2num(href_list["Z"]),
)
else if(href_list["adminchecklaws"])
if(!check_rights(R_ADMIN))
@@ -984,15 +965,7 @@
give_admin_popup(target, owner, message)
else if(href_list["adminsmite"])
if(!check_rights(R_ADMIN|R_FUN))
return
var/mob/living/carbon/human/H = locate(href_list["adminsmite"]) in GLOB.mob_list
if(!H || !istype(H))
to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human", confidential = TRUE)
return
usr.client.smite(H)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/admin_smite, locate(href_list["adminsmite"]))
else if(href_list["CentComReply"])
if(!check_rights(R_ADMIN))
@@ -1021,42 +994,21 @@
var/obj/item/station_charter/charter = locate(href_list["reject_custom_name"])
if(istype(charter))
charter.reject_proposed(usr)
else if(href_list["jumpto"])
if(!isobserver(usr) && !check_rights(R_ADMIN))
return
var/mob/M = locate(href_list["jumpto"])
usr.client.jumptomob(M)
else if(href_list["jumpto"])
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/jump_to_mob, locate(href_list["jumpto"]))
else if(href_list["getmob"])
if(!check_rights(R_ADMIN))
return
if(tgui_alert(usr, "Confirm?", "Message", list("Yes", "No")) != "Yes")
return
var/mob/M = locate(href_list["getmob"])
usr.client.Getmob(M)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/get_mob, locate(href_list["getmob"]))
else if(href_list["sendmob"])
if(!check_rights(R_ADMIN))
return
var/mob/M = locate(href_list["sendmob"])
usr.client.sendmob(M)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/send_mob, locate(href_list["sendmob"]))
else if(href_list["narrateto"])
if(!check_rights(R_ADMIN))
return
var/mob/M = locate(href_list["narrateto"])
usr.client.cmd_admin_direct_narrate(M)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/cmd_admin_direct_narrate, locate(href_list["narrateto"]))
else if(href_list["subtlemessage"])
if(!check_rights(R_ADMIN))
return
var/mob/M = locate(href_list["subtlemessage"])
usr.client.cmd_admin_subtle_message(M)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/cmd_admin_subtle_message, locate(href_list["subtlemessage"]))
else if(href_list["playsoundto"])
if(!check_rights(R_SOUND))
@@ -1065,7 +1017,7 @@
var/mob/M = locate(href_list["playsoundto"])
var/S = input("", "Select a sound file",) as null|sound
if(S)
usr.client.play_direct_mob_sound(S, M)
SSadmin_verbs.dynamic_invoke_verb(usr.client, /datum/admin_verb/play_direct_mob_sound, S, M)
else if(href_list["individuallog"])
if(!check_rights(R_ADMIN))
@@ -1104,7 +1056,8 @@
else
D.traitor_panel()
else
show_traitor_panel(M)
SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/show_traitor_panel, M)
return
else if(href_list["skill"])
if(!check_rights(R_ADMIN))
@@ -1124,17 +1077,11 @@
else
to_chat(usr, "This can only be used on instances of type /mob and /mind", confidential = TRUE)
return
show_skill_panel(target_mind)
SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/show_skill_panel, target_mind)
return
else if(href_list["borgpanel"])
if(!check_rights(R_ADMIN))
return
var/mob/M = locate(href_list["borgpanel"])
if(!iscyborg(M))
to_chat(usr, "This can only be used on cyborgs", confidential = TRUE)
else
open_borgopanel(M)
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/borg_panel, locate(href_list["borgpanel"]))
else if(href_list["initmind"])
if(!check_rights(R_ADMIN))
@@ -1306,9 +1253,7 @@
return
else if(href_list["check_antagonist"])
if(!check_rights(R_ADMIN))
return
usr.client.check_antagonists()
SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/check_antagonists)
else if(href_list["kick_all_from_lobby"])
if(!check_rights(R_ADMIN))
@@ -1378,7 +1323,7 @@
log_admin("[key_name(usr)] turned a Lag Switch measure at index ([switch_index]) [LAZYACCESS(SSlag_switch.measures, switch_index) ? "ON" : "OFF"]")
message_admins("[key_name_admin(usr)] turned a Lag Switch measure [LAZYACCESS(SSlag_switch.measures, switch_index) ? "ON" : "OFF"]")
src.show_lag_switch_panel()
SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/lag_switch_panel)
else if(href_list["change_lag_switch_option"])
if(!check_rights(R_ADMIN))
@@ -1407,7 +1352,7 @@
log_admin("[key_name(usr)] set the Lag Switch slowmode cooldown to [new_num] seconds.")
message_admins("[key_name_admin(usr)] set the Lag Switch slowmode cooldown to [new_num] seconds.")
src.show_lag_switch_panel()
SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/lag_switch_panel)
else if(href_list["viewruntime"])
var/datum/error_viewer/error_viewer = locate(href_list["viewruntime"])
@@ -1523,13 +1468,7 @@
toggle_id_ctf(usr, CTF_GHOST_CTF_GAME_ID)
else if(href_list["rebootworld"])
if(!check_rights(R_ADMIN))
return
var/confirm = tgui_alert(usr,"Are you sure you want to reboot the server?", "Confirm Reboot", list("Yes", "No"))
if(confirm == "No")
return
if(confirm == "Yes")
restart()
SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/restart)
else if(href_list["check_teams"])
if(!check_rights(R_ADMIN))
@@ -1748,9 +1687,7 @@
return remove_tagged_datum(datum_to_remove)
else if(href_list["show_tags"])
if(!check_rights(R_ADMIN))
return
return display_tags()
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/display_tags)
else if(href_list["mark_datum"])
if(!check_rights(R_ADMIN))
@@ -1797,7 +1734,4 @@
web_sound(usr, link_url, credit)
else if(href_list["debug_z_levels"])
if(!check_rights(R_DEBUG))
return
owner.debug_z_levels()
return SSadmin_verbs.dynamic_invoke_verb(usr, /datum/admin_verb/debug_z_levels)