mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-23 20:56:20 +01:00
Duty Officers
This commit is contained in:
+107
-96
@@ -46,6 +46,10 @@ var/global/floorIsLava = 0
|
||||
usr << "Error: you are not an admin!"
|
||||
return
|
||||
|
||||
if(!src.rights & (R_ADMIN|R_MOD|R_FUN|R_DEV))
|
||||
usr << "Error: you are not an admin!"
|
||||
return
|
||||
|
||||
var/body = "<html><head><center><title>Options for [M.key]</title></head>"
|
||||
body += "<body>Options panel for <b>[M]</b>"
|
||||
if(M.client)
|
||||
@@ -122,98 +126,100 @@ var/global/floorIsLava = 0
|
||||
"}
|
||||
|
||||
if (M.client)
|
||||
if(!istype(M, /mob/new_player))
|
||||
body += "<br><br>"
|
||||
body += "<b>Transformation:</b>"
|
||||
body += "<br>"
|
||||
if(check_rights(R_ADMIN|R_MOD|R_FUN,0))
|
||||
if(!istype(M, /mob/new_player))
|
||||
body += "<br><br>"
|
||||
body += "<b>Transformation:</b>"
|
||||
body += "<br>"
|
||||
|
||||
//Monkey
|
||||
if(ismonkey(M))
|
||||
body += "<B>Monkeyized</B> | "
|
||||
else
|
||||
body += "<A href='?src=\ref[src];monkeyone=\ref[M]'>Monkeyize</A> | "
|
||||
//Monkey
|
||||
if(ismonkey(M))
|
||||
body += "<B>Monkeyized</B> | "
|
||||
else
|
||||
body += "<A href='?src=\ref[src];monkeyone=\ref[M]'>Monkeyize</A> | "
|
||||
|
||||
//Corgi
|
||||
if(iscorgi(M))
|
||||
body += "<B>Corgized</B> | "
|
||||
else
|
||||
body += "<A href='?src=\ref[src];corgione=\ref[M]'>Corgize</A> | "
|
||||
//Corgi
|
||||
if(iscorgi(M))
|
||||
body += "<B>Corgized</B> | "
|
||||
else
|
||||
body += "<A href='?src=\ref[src];corgione=\ref[M]'>Corgize</A> | "
|
||||
|
||||
//AI / Cyborg
|
||||
if(isAI(M))
|
||||
body += "<B>Is an AI</B> "
|
||||
else if(ishuman(M))
|
||||
body += {"<A href='?src=\ref[src];makeai=\ref[M]'>Make AI</A> |
|
||||
<A href='?src=\ref[src];makerobot=\ref[M]'>Make Robot</A> |
|
||||
<A href='?src=\ref[src];makeslime=\ref[M]'>Make slime</A> |
|
||||
<A href='?src=\ref[src];makealien=\ref[M]'>Make Alien(BROKEN)</A> |
|
||||
//AI / Cyborg
|
||||
if(isAI(M))
|
||||
body += "<B>Is an AI</B> "
|
||||
else if(ishuman(M))
|
||||
body += {"<A href='?src=\ref[src];makeai=\ref[M]'>Make AI</A> |
|
||||
<A href='?src=\ref[src];makerobot=\ref[M]'>Make Robot</A> |
|
||||
<A href='?src=\ref[src];makeslime=\ref[M]'>Make slime</A> |
|
||||
<A href='?src=\ref[src];makealien=\ref[M]'>Make Alien(BROKEN)</A> |
|
||||
"}
|
||||
|
||||
//Simple Animals
|
||||
if(isanimal(M))
|
||||
body += "<A href='?src=\ref[src];makeanimal=\ref[M]'>Re-Animalize</A> | "
|
||||
else
|
||||
body += "<A href='?src=\ref[src];makeanimal=\ref[M]'>Animalize</A> | "
|
||||
|
||||
// DNA2 - Admin Hax
|
||||
if(M.dna && iscarbon(M))
|
||||
body += "<br><br>"
|
||||
body += "<b>DNA Blocks:</b><br><table border='2'><tr><th> </th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th>"
|
||||
var/bname
|
||||
for(var/block=1;block<=DNA_SE_LENGTH;block++)
|
||||
if(((block-1)%5)==0)
|
||||
body += "</tr><tr><th>[block-1]</th>"
|
||||
bname = assigned_blocks[block]
|
||||
body += "<td>"
|
||||
if(bname)
|
||||
var/bstate=M.dna.GetSEState(block)
|
||||
var/bcolor="[(bstate)?"#006600":"#ff0000"]"
|
||||
body += "<A href='?src=\ref[src];togmutate=\ref[M];block=[block]' style='color:[bcolor];'>[bname]</A><sub>[block]</sub>"
|
||||
else
|
||||
body += "[block]"
|
||||
body+="</td>"
|
||||
body += "</tr></table>"
|
||||
|
||||
body += {"<br><br>
|
||||
<b>Rudimentary transformation:</b><font size=2><br>These transformations only create a new mob type and copy stuff over. They do not take into account MMIs and similar mob-specific things. The buttons in 'Transformations' are preferred, when possible.</font><br>
|
||||
<A href='?src=\ref[src];simplemake=observer;mob=\ref[M]'>Observer</A> |
|
||||
<A href='?src=\ref[src];simplemake=robot;mob=\ref[M]'>Cyborg</A> |
|
||||
<A href='?src=\ref[src];simplemake=human;mob=\ref[M]'>Human</A><br>
|
||||
|
||||
Slime: <A href='?src=\ref[src];simplemake=slime;mob=\ref[M]'>Baby</A> |
|
||||
<A href='?src=\ref[src];simplemake=adultslime;mob=\ref[M]'>Adult</A><br>
|
||||
|
||||
Animal: <A href='?src=\ref[src];simplemake=monkey;mob=\ref[M]'>Monkey</A> |
|
||||
<A href='?src=\ref[src];simplemake=cat;mob=\ref[M]'>Cat</A> |
|
||||
<A href='?src=\ref[src];simplemake=runtime;mob=\ref[M]'>Runtime</A> |
|
||||
<A href='?src=\ref[src];simplemake=corgi;mob=\ref[M]'>Corgi</A> |
|
||||
<A href='?src=\ref[src];simplemake=ian;mob=\ref[M]'>Ian</A> |
|
||||
<A href='?src=\ref[src];simplemake=crab;mob=\ref[M]'>Crab</A> |
|
||||
<A href='?src=\ref[src];simplemake=coffee;mob=\ref[M]'>Coffee</A> |
|
||||
<A href='?src=\ref[src];simplemake=nymph;mob=\ref[M]'>Nymph</A><br>
|
||||
|
||||
Construct: <A href='?src=\ref[src];simplemake=constructarmoured;mob=\ref[M]'>Armoured</A> |
|
||||
<A href='?src=\ref[src];simplemake=constructbuilder;mob=\ref[M]'>Builder</A> |
|
||||
<A href='?src=\ref[src];simplemake=constructwraith;mob=\ref[M]'>Wraith</A> |
|
||||
<A href='?src=\ref[src];simplemake=shade;mob=\ref[M]'>Shade</A><br>
|
||||
|
||||
Alien: <A href='?src=\ref[src];simplemake=drone;mob=\ref[M]'>Drone</A> |
|
||||
<A href='?src=\ref[src];simplemake=hunter;mob=\ref[M]'>Hunter</A> |
|
||||
<A href='?src=\ref[src];simplemake=queen;mob=\ref[M]'>Queen</A> |
|
||||
<A href='?src=\ref[src];simplemake=sentinel;mob=\ref[M]'>Sentinel</A> |
|
||||
<A href='?src=\ref[src];simplemake=larva;mob=\ref[M]'>Larva</A><br>
|
||||
"}
|
||||
|
||||
//Simple Animals
|
||||
if(isanimal(M))
|
||||
body += "<A href='?src=\ref[src];makeanimal=\ref[M]'>Re-Animalize</A> | "
|
||||
else
|
||||
body += "<A href='?src=\ref[src];makeanimal=\ref[M]'>Animalize</A> | "
|
||||
|
||||
// DNA2 - Admin Hax
|
||||
if(M.dna && iscarbon(M))
|
||||
body += "<br><br>"
|
||||
body += "<b>DNA Blocks:</b><br><table border='2'><tr><th> </th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th>"
|
||||
var/bname
|
||||
for(var/block=1;block<=DNA_SE_LENGTH;block++)
|
||||
if(((block-1)%5)==0)
|
||||
body += "</tr><tr><th>[block-1]</th>"
|
||||
bname = assigned_blocks[block]
|
||||
body += "<td>"
|
||||
if(bname)
|
||||
var/bstate=M.dna.GetSEState(block)
|
||||
var/bcolor="[(bstate)?"#006600":"#ff0000"]"
|
||||
body += "<A href='?src=\ref[src];togmutate=\ref[M];block=[block]' style='color:[bcolor];'>[bname]</A><sub>[block]</sub>"
|
||||
else
|
||||
body += "[block]"
|
||||
body+="</td>"
|
||||
body += "</tr></table>"
|
||||
|
||||
body += {"<br><br>
|
||||
<b>Rudimentary transformation:</b><font size=2><br>These transformations only create a new mob type and copy stuff over. They do not take into account MMIs and similar mob-specific things. The buttons in 'Transformations' are preferred, when possible.</font><br>
|
||||
<A href='?src=\ref[src];simplemake=observer;mob=\ref[M]'>Observer</A> |
|
||||
<A href='?src=\ref[src];simplemake=robot;mob=\ref[M]'>Cyborg</A> |
|
||||
<A href='?src=\ref[src];simplemake=human;mob=\ref[M]'>Human</A><br>
|
||||
|
||||
Slime: <A href='?src=\ref[src];simplemake=slime;mob=\ref[M]'>Baby</A> |
|
||||
<A href='?src=\ref[src];simplemake=adultslime;mob=\ref[M]'>Adult</A><br>
|
||||
|
||||
Animal: <A href='?src=\ref[src];simplemake=monkey;mob=\ref[M]'>Monkey</A> |
|
||||
<A href='?src=\ref[src];simplemake=cat;mob=\ref[M]'>Cat</A> |
|
||||
<A href='?src=\ref[src];simplemake=runtime;mob=\ref[M]'>Runtime</A> |
|
||||
<A href='?src=\ref[src];simplemake=corgi;mob=\ref[M]'>Corgi</A> |
|
||||
<A href='?src=\ref[src];simplemake=ian;mob=\ref[M]'>Ian</A> |
|
||||
<A href='?src=\ref[src];simplemake=crab;mob=\ref[M]'>Crab</A> |
|
||||
<A href='?src=\ref[src];simplemake=coffee;mob=\ref[M]'>Coffee</A> |
|
||||
<A href='?src=\ref[src];simplemake=nymph;mob=\ref[M]'>Nymph</A><br>
|
||||
|
||||
Construct: <A href='?src=\ref[src];simplemake=constructarmoured;mob=\ref[M]'>Armoured</A> |
|
||||
<A href='?src=\ref[src];simplemake=constructbuilder;mob=\ref[M]'>Builder</A> |
|
||||
<A href='?src=\ref[src];simplemake=constructwraith;mob=\ref[M]'>Wraith</A> |
|
||||
<A href='?src=\ref[src];simplemake=shade;mob=\ref[M]'>Shade</A><br>
|
||||
|
||||
Alien: <A href='?src=\ref[src];simplemake=drone;mob=\ref[M]'>Drone</A> |
|
||||
<A href='?src=\ref[src];simplemake=hunter;mob=\ref[M]'>Hunter</A> |
|
||||
<A href='?src=\ref[src];simplemake=queen;mob=\ref[M]'>Queen</A> |
|
||||
<A href='?src=\ref[src];simplemake=sentinel;mob=\ref[M]'>Sentinel</A> |
|
||||
<A href='?src=\ref[src];simplemake=larva;mob=\ref[M]'>Larva</A><br>
|
||||
"}
|
||||
|
||||
if (M.client)
|
||||
body += {"<br><br>
|
||||
<b>Other actions:</b>
|
||||
<br>
|
||||
<A href='?src=\ref[src];forcespeech=\ref[M]'>Forcesay</A> |
|
||||
<A href='?src=\ref[src];tdome1=\ref[M]'>Thunderdome 1</A> |
|
||||
<A href='?src=\ref[src];tdome2=\ref[M]'>Thunderdome 2</A> |
|
||||
<A href='?src=\ref[src];tdomeadmin=\ref[M]'>Thunderdome Admin</A> |
|
||||
<A href='?src=\ref[src];tdomeobserve=\ref[M]'>Thunderdome Observer</A> |
|
||||
"}
|
||||
if(check_rights(R_ADMIN|R_FUN,0))
|
||||
body += {"<br><br>
|
||||
<b>Other actions:</b>
|
||||
<br>
|
||||
<A href='?src=\ref[src];forcespeech=\ref[M]'>Forcesay</A> |
|
||||
<A href='?src=\ref[src];tdome1=\ref[M]'>Thunderdome 1</A> |
|
||||
<A href='?src=\ref[src];tdome2=\ref[M]'>Thunderdome 2</A> |
|
||||
<A href='?src=\ref[src];tdomeadmin=\ref[M]'>Thunderdome Admin</A> |
|
||||
<A href='?src=\ref[src];tdomeobserve=\ref[M]'>Thunderdome Observer</A> |
|
||||
"}
|
||||
|
||||
body += {"<br>
|
||||
</center></body></html>
|
||||
@@ -589,14 +595,16 @@ var/global/floorIsLava = 0
|
||||
usr << browse(dat, "window=ban;size=400x400")
|
||||
|
||||
/datum/admins/proc/Game()
|
||||
if(!check_rights(0)) return
|
||||
if(!check_rights(R_ADMIN|R_FUN)) return
|
||||
|
||||
var/dat = {"
|
||||
<center><B>Game Panel</B></center><hr>\n
|
||||
<A href='?src=\ref[src];c_mode=1'>Change Game Mode</A><br>
|
||||
"}
|
||||
if(master_mode == "secret")
|
||||
dat += "<A href='?src=\ref[src];f_secret=1'>(Force Secret Mode)</A><br>"
|
||||
var/dat = ""
|
||||
if(check_rights(R_ADMIN,0))
|
||||
dat += {"
|
||||
<center><B>Game Panel</B></center><hr>\n
|
||||
<A href='?src=\ref[src];c_mode=1'>Change Game Mode</A><br>
|
||||
"}
|
||||
if(master_mode == "secret")
|
||||
dat += "<A href='?src=\ref[src];f_secret=1'>(Force Secret Mode)</A><br>"
|
||||
|
||||
dat += {"
|
||||
<BR>
|
||||
@@ -604,10 +612,13 @@ var/global/floorIsLava = 0
|
||||
<A href='?src=\ref[src];quick_create_object=1'>Quick Create Object</A><br>
|
||||
<A href='?src=\ref[src];create_turf=1'>Create Turf</A><br>
|
||||
<A href='?src=\ref[src];create_mob=1'>Create Mob</A><br>
|
||||
<br><A href='?src=\ref[src];vsc=airflow'>Edit Airflow Settings</A><br>
|
||||
<A href='?src=\ref[src];vsc=plasma'>Edit Plasma Settings</A><br>
|
||||
<A href='?src=\ref[src];vsc=default'>Choose a default ZAS setting</A><br>
|
||||
"}
|
||||
if(check_rights(R_ADMIN,0))
|
||||
dat += {"
|
||||
<br><A href='?src=\ref[src];vsc=airflow'>Edit Airflow Settings</A><br>
|
||||
<A href='?src=\ref[src];vsc=plasma'>Edit Plasma Settings</A><br>
|
||||
<A href='?src=\ref[src];vsc=default'>Choose a default ZAS setting</A><br>
|
||||
"}
|
||||
|
||||
usr << browse(dat, "window=admin2;size=210x280")
|
||||
return
|
||||
|
||||
@@ -42,6 +42,7 @@ var/list/admin_ranks = list() //list of all ranks with associated rights
|
||||
if("spawn","create") rights |= R_SPAWN
|
||||
if("mod") rights |= R_MOD
|
||||
if("developer") rights |= R_DEV
|
||||
if("dutyofficer") rights |= R_DUTYOFF
|
||||
admin_ranks[rank] = rights
|
||||
previous_rights = rights
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
//admin verb groups - They can overlap if you so wish. Only one of each verb will exist in the verbs list regardless
|
||||
var/list/admin_verbs_default = list(
|
||||
var/list/admin_verbs_default = list(
|
||||
/client/proc/player_panel,
|
||||
/client/proc/toggleadminhelpsound, /*toggles whether we hear a sound when adminhelps/PMs are used*/
|
||||
/client/proc/deadmin_self, /*destroys our own admin datum so we can play as a regular player*/
|
||||
@@ -101,6 +102,7 @@ var/list/admin_verbs_sounds = list(
|
||||
var/list/admin_verbs_fun = list(
|
||||
//Hey look it's in order of letters ^_^
|
||||
/datum/admins/proc/access_news_network,
|
||||
/datum/admins/proc/Game,
|
||||
/datum/admins/proc/toggle_aliens,
|
||||
/datum/admins/proc/toggle_space_ninja,
|
||||
/client/proc/admin_ghost,
|
||||
@@ -138,6 +140,7 @@ var/list/admin_verbs_fun = list(
|
||||
/client/proc/send_space_ninja,
|
||||
/client/proc/toggle_view_range
|
||||
)
|
||||
|
||||
var/list/admin_verbs_dev = list(
|
||||
/client/proc/dsay,
|
||||
/client/proc/togglebuildmodeself,
|
||||
@@ -388,6 +391,7 @@ var/list/admin_verbs_mod = list(
|
||||
/client/proc/toggle_power_update_profiling,
|
||||
/client/proc/atmos_toggle_debug
|
||||
)
|
||||
*/
|
||||
|
||||
/client/proc/hide_most_verbs()//Allows you to keep some functionality while hiding some verbs
|
||||
set name = "Adminverbs - Hide Most"
|
||||
@@ -445,6 +449,9 @@ var/list/admin_verbs_mod = list(
|
||||
else if(istype(mob,/mob/new_player))
|
||||
src << "<font color='red'>Error: Aghost: Can't admin-ghost whilst in the lobby. Join or Observe first.</font>"
|
||||
else
|
||||
//first lets see if this works
|
||||
if(!holder.original_mob)
|
||||
holder.original_mob = mob
|
||||
//ghostize
|
||||
var/mob/body = mob
|
||||
body.ghostize(1)
|
||||
|
||||
@@ -8,6 +8,8 @@ var/list/admin_datums = list()
|
||||
|
||||
var/datum/marked_datum
|
||||
|
||||
var/mob/living/original_mob = null //used to return to body from Duty Officers
|
||||
|
||||
var/admincaster_screen = 0 //See newscaster.dm under machinery for a full description
|
||||
var/datum/feed_message/admincaster_feed_message = new /datum/feed_message //These two will act as holders.
|
||||
var/datum/feed_channel/admincaster_feed_channel = new /datum/feed_channel
|
||||
|
||||
@@ -0,0 +1,417 @@
|
||||
//admin verb groups - They can overlap if you so wish. Only one of each verb will exist in the verbs list regardless
|
||||
var/list/admin_verbs_default = list(
|
||||
/client/proc/deadmin_self, /*destroys our own admin datum so we can play as a regular player*/
|
||||
/client/proc/hide_verbs, /*hides all our adminverbs*/
|
||||
)
|
||||
|
||||
var/list/admin_verbs_admin = list(
|
||||
// /datum/admins/proc/show_traitor_panel, /*interface which shows a mob's mind*/ -Removed due to rare practical use. Moved to debug verbs ~Errorage
|
||||
// /client/proc/sendmob, /*sends a mob somewhere*/ -Removed due to it needing two sorting procs to work, which were executed every time an admin right-clicked. ~Errorage
|
||||
// /client/proc/toggle_hear_deadcast, /*toggles whether we hear deadchat*/
|
||||
// /client/proc/deadchat /*toggles deadchat on/off*/
|
||||
/datum/admins/proc/announce, /*priority announce something to all clients.*/
|
||||
/datum/admins/proc/access_news_network, /*allows access of newscasters*/
|
||||
/datum/admins/proc/PlayerNotes,
|
||||
/datum/admins/proc/show_player_info,
|
||||
/datum/admins/proc/show_player_panel, /*shows an interface for individual players, with various links (links require additional flags*/
|
||||
/datum/admins/proc/show_skills,
|
||||
/datum/admins/proc/toggleenter, /*toggles whether people can join the current game*/
|
||||
/datum/admins/proc/toggleguests, /*toggles whether guests can join the current game*/
|
||||
/datum/admins/proc/toggleooc, /*toggles ooc on/off for everyone*/
|
||||
/datum/admins/proc/toggledevooc,
|
||||
/datum/admins/proc/togglemodooc,
|
||||
/datum/admins/proc/togglelooc,
|
||||
/datum/admins/proc/togglemodlooc,
|
||||
/datum/admins/proc/toggledevlooc,
|
||||
/datum/admins/proc/toggleoocdead, /*toggles ooc on/off for everyone who is dead*/
|
||||
/datum/admins/proc/toggledsay, /*toggles dsay on/off for everyone*/
|
||||
/datum/admins/proc/view_atk_log, /*shows the server combat-log, doesn't do anything presently*/
|
||||
/datum/admins/proc/view_txt_log, /*shows the server log (diary) for today*/
|
||||
/client/proc/admin_call_shuttle, /*allows us to call the emergency shuttle*/
|
||||
/client/proc/admin_cancel_shuttle, /*allows us to cancel the emergency shuttle, sending it back to centcomm*/
|
||||
/client/proc/admin_ghost, /*allows us to ghost/reenter body at will*/
|
||||
/client/proc/admin_memo, /*admin memo system. show/delete/write. +SERVER needed to delete admin memos of others*/
|
||||
/client/proc/alertlevels,
|
||||
/client/proc/allow_character_respawn, /* Allows a ghost to respawn */
|
||||
/client/proc/check_ai_laws, /*shows AI and borg laws*/
|
||||
/client/proc/check_antagonists,
|
||||
/client/proc/check_customitem_activity,
|
||||
/client/proc/check_words, /*displays cult-words*/
|
||||
/client/proc/cleartox,
|
||||
/client/proc/cmd_admin_check_contents, /*displays the contents of an instance*/
|
||||
/client/proc/cmd_admin_create_centcom_report,
|
||||
/client/proc/cmd_admin_change_custom_event,
|
||||
/client/proc/cmd_admin_delete, /*delete an instance/object/mob/etc*/
|
||||
/client/proc/cmd_admin_direct_narrate, /*send text directly to a player with no padding. Useful for narratives and fluff-text*/
|
||||
/client/proc/cmd_admin_pm_context, /*right-click adminPM interface*/
|
||||
/client/proc/cmd_admin_pm_panel, /*admin-pm list*/
|
||||
/client/proc/cmd_admin_subtle_message, /*send an message to somebody as a 'voice in their head'*/
|
||||
/client/proc/cmd_admin_say, /*admin-only ooc chat*/
|
||||
/client/proc/cmd_admin_rejuvenate,
|
||||
/client/proc/cmd_admin_unwind,
|
||||
/client/proc/cmd_admin_wind,
|
||||
/client/proc/cmd_admin_world_narrate, /*sends text to all players with no padding*/
|
||||
/client/proc/cmd_duty_say,
|
||||
/client/proc/cmd_mentor_check_new_players,
|
||||
/client/proc/cmd_mod_say,
|
||||
/client/proc/colorooc, /*allows us to set a custom colour for everythign we say in ooc*/
|
||||
/client/proc/debug_variables, /*allows us to -see- the variables of any instance in the game. +VAREDIT needed to modify*/
|
||||
/client/proc/dsay, /*talk in deadchat using our ckey/fakekey*/
|
||||
/client/proc/free_slot, /*frees slot for chosen job*/
|
||||
/client/proc/game_panel, /*game panel, allows to change game-mode etc*/
|
||||
/client/proc/Getmob, /*teleports a mob to our location*/
|
||||
/client/proc/Getkey, /*teleports a mob with a certain ckey to our location*/
|
||||
/client/proc/getserverlog, /*allows us to fetch server logs (diary) for other days*/
|
||||
/client/proc/giveruntimelog, /*allows us to give access to runtime logs to somebody*/
|
||||
/client/proc/global_man_up,
|
||||
/client/proc/hide_most_verbs, /*hides all our hideable adminverbs*/
|
||||
/client/proc/investigate_show, /*various admintools for investigation. Such as a singulo grief-log*/
|
||||
/client/proc/invisimin, /*allows our mob to go invisible/visible*/
|
||||
/client/proc/Jump,
|
||||
/client/proc/jumptocoord, /*we ghost and jump to a coordinate*/
|
||||
/client/proc/jumptokey, /*allows us to jump to the location of a mob with a certain ckey*/
|
||||
/client/proc/jumptomob, /*allows us to jump to a specific mob*/
|
||||
/client/proc/jumptoturf, /*allows us to jump to a specific turf*/
|
||||
/client/proc/man_up,
|
||||
/client/proc/player_panel, /*shows an interface for all players, with links to various panels (old style)*/
|
||||
/client/proc/player_panel_new, /*shows an interface for all players, with links to various panels*/
|
||||
/client/proc/response_team, // Response Teams admin verb
|
||||
/client/proc/toggleadminhelpsound, /*toggles whether we hear a sound when adminhelps/PMs are used*/
|
||||
/client/proc/toggle_antagHUD_use,
|
||||
/client/proc/toggle_antagHUD_restrictions,
|
||||
/client/proc/toggleattacklogs,
|
||||
/client/proc/toggledebuglogs,
|
||||
/client/proc/toggleghostwriters,
|
||||
/client/proc/toggle_hear_radio, /*toggles whether we hear the radio*/
|
||||
/client/proc/toggledrones,
|
||||
/client/proc/toggleprayers,
|
||||
/client/proc/toggle_view_range, /*changes how far we can see*/
|
||||
/client/proc/secrets,
|
||||
/client/proc/set_ooc
|
||||
)
|
||||
|
||||
var/list/admin_verbs_ban = list(
|
||||
/client/proc/unban_panel,
|
||||
/client/proc/jobbans,
|
||||
/client/proc/warning_panel
|
||||
)
|
||||
|
||||
var/list/admin_verbs_sounds = list(
|
||||
/client/proc/play_local_sound,
|
||||
/client/proc/play_sound
|
||||
)
|
||||
|
||||
var/list/admin_verbs_fun = list(
|
||||
//Hey look it's in order of letters ^_^
|
||||
/datum/admins/proc/access_news_network,
|
||||
/datum/admins/proc/toggle_aliens,
|
||||
/datum/admins/proc/toggle_space_ninja,
|
||||
/client/proc/admin_ghost,
|
||||
/client/proc/alertlevels,
|
||||
/client/proc/check_ai_laws,
|
||||
/client/proc/cinematic,
|
||||
/client/proc/cmd_admin_add_freeform_ai_law,
|
||||
/client/proc/cmd_admin_add_random_ai_law,
|
||||
/client/proc/cmd_admin_change_custom_event,
|
||||
/client/proc/cmd_admin_create_centcom_report,
|
||||
/client/proc/cmd_admin_delete,
|
||||
/client/proc/cmd_admin_direct_narrate,
|
||||
/client/proc/cmd_admin_dress,
|
||||
/client/proc/cmd_admin_gib_self,
|
||||
/client/proc/cmd_admin_pm_context,
|
||||
/client/proc/cmd_admin_pm_panel,
|
||||
/client/proc/cmd_admin_subtle_message,
|
||||
/client/proc/cmd_admin_world_narrate,
|
||||
/client/proc/cmd_debug_tog_aliens,
|
||||
/client/proc/cmd_mod_say,
|
||||
/client/proc/debug_variables,
|
||||
/client/proc/drop_bomb,
|
||||
/client/proc/dsay,
|
||||
/client/proc/editappear,
|
||||
/client/proc/everyone_random,
|
||||
/client/proc/game_panel,
|
||||
/client/proc/Getmob,
|
||||
/client/proc/Getkey,
|
||||
/client/proc/hide_most_verbs,
|
||||
/client/proc/Jump,
|
||||
/client/proc/jumptokey,
|
||||
/client/proc/jumptomob,
|
||||
/client/proc/make_area_sound,
|
||||
/client/proc/make_sound,
|
||||
/client/proc/object_talk,
|
||||
/client/proc/one_click_antag,
|
||||
/client/proc/player_panel,
|
||||
/client/proc/secrets,
|
||||
/client/proc/send_space_ninja,
|
||||
/client/proc/toggle_view_range
|
||||
)
|
||||
|
||||
var/list/admin_verbs_dev = list(
|
||||
/datum/admins/proc/restart,
|
||||
/client/proc/admin_ghost,
|
||||
/client/proc/air_report,
|
||||
/client/proc/enable_debug_verbs,
|
||||
/client/proc/cmd_admin_delete,
|
||||
/client/proc/cmd_admin_list_open_jobs,
|
||||
/client/proc/cmd_debug_del_all,
|
||||
/client/proc/cmd_debug_make_powernets,
|
||||
/client/proc/cmd_debug_mob_lists,
|
||||
/client/proc/cmd_dev_bst,
|
||||
/client/proc/cmd_dev_say,
|
||||
/client/proc/cmd_dev_reset_gravity,
|
||||
/client/proc/cmd_dev_reset_floating,
|
||||
/client/proc/Debug2,
|
||||
/client/proc/debug_controller,
|
||||
/client/proc/debug_variables,
|
||||
/client/proc/dsay,
|
||||
/client/proc/getruntimelog,
|
||||
/client/proc/giveruntimelog,
|
||||
/client/proc/hide_most_verbs,
|
||||
/client/proc/kill_air,
|
||||
/client/proc/kill_airgroup,
|
||||
/client/proc/player_panel,
|
||||
/client/proc/reload_admins,
|
||||
/client/proc/restart_controller,
|
||||
/client/proc/togglebuildmodeself,
|
||||
/client/proc/toggledebuglogs,
|
||||
/client/proc/togglescopeslogs,
|
||||
/client/proc/ZASSettings
|
||||
)
|
||||
var/list/admin_verbs_spawn = list(
|
||||
/datum/admins/proc/spawn_atom, /*allows us to spawn instances*/
|
||||
/client/proc/respawn_character
|
||||
)
|
||||
var/list/admin_verbs_server = list(
|
||||
/datum/admins/proc/adrev,
|
||||
/datum/admins/proc/adspawn,
|
||||
/datum/admins/proc/adjump,
|
||||
/datum/admins/proc/delay,
|
||||
/datum/admins/proc/toggleaban,
|
||||
/datum/admins/proc/toggleAI,
|
||||
/datum/admins/proc/toggle_aliens,
|
||||
/datum/admins/proc/toggle_space_ninja,
|
||||
/datum/admins/proc/immreboot,
|
||||
/datum/admins/proc/startnow,
|
||||
/datum/admins/proc/restart,
|
||||
/client/proc/check_customitem_activity,
|
||||
/client/proc/cmd_admin_delete, /*delete an instance/object/mob/etc*/
|
||||
/client/proc/cmd_debug_del_all,
|
||||
/client/proc/everyone_random,
|
||||
/client/proc/nanomapgen_DumpImage,
|
||||
/client/proc/SDQL_query,
|
||||
/client/proc/SDQL2_query,
|
||||
/client/proc/Set_Holiday,
|
||||
/client/proc/ToRban,
|
||||
/client/proc/toggle_log_hrefs,
|
||||
/client/proc/toggle_random_events
|
||||
)
|
||||
|
||||
var/list/admin_verbs_debug = list(
|
||||
/datum/admins/proc/delay,
|
||||
/datum/admins/proc/restart,
|
||||
/client/proc/air_report,
|
||||
/client/proc/callproc,
|
||||
/client/proc/cmd_admin_delete,
|
||||
/client/proc/cmd_admin_list_open_jobs,
|
||||
/client/proc/cmd_debug_del_all,
|
||||
/client/proc/cmd_debug_make_powernets,
|
||||
/client/proc/cmd_debug_mob_lists,
|
||||
/client/proc/cmd_debug_tog_aliens,
|
||||
/client/proc/cmd_dev_reset_gravity,
|
||||
/client/proc/cmd_dev_reset_floating,
|
||||
/client/proc/Debug2,
|
||||
/client/proc/debug_controller,
|
||||
/client/proc/debug_variables,
|
||||
/client/proc/enable_debug_verbs,
|
||||
/client/proc/fillspace,
|
||||
/client/proc/getruntimelog,
|
||||
/client/proc/hide_activity,
|
||||
/client/proc/kill_air,
|
||||
/client/proc/kill_airgroup,
|
||||
/client/proc/show_distribution_map,
|
||||
/client/proc/toggledebuglogs,
|
||||
/client/proc/reload_admins,
|
||||
/client/proc/restart_controller,
|
||||
/client/proc/remake_distribution_map,
|
||||
/client/proc/ZASSettings,
|
||||
)
|
||||
|
||||
var/list/admin_verbs_possess = list(
|
||||
/proc/possess,
|
||||
/proc/release
|
||||
)
|
||||
|
||||
var/list/admin_verbs_permissions = list(
|
||||
/client/proc/edit_admin_permissions
|
||||
)
|
||||
|
||||
var/list/admin_verbs_rejuv = list(
|
||||
/client/proc/respawn_character
|
||||
)
|
||||
|
||||
var/list/admin_verbs_mod = list(
|
||||
/datum/admins/proc/PlayerNotes,
|
||||
/datum/admins/proc/show_player_info,
|
||||
/datum/admins/proc/show_skills,
|
||||
/datum/admins/proc/show_player_panel,
|
||||
/client/proc/admin_ghost, /*allows us to ghost/reenter body at will*/
|
||||
/client/proc/check_antagonists, /*shows all antags*/
|
||||
/client/proc/check_ai_laws,
|
||||
/client/proc/cmd_admin_check_contents,
|
||||
/client/proc/cmd_admin_wind,
|
||||
/client/proc/cmd_admin_unwind,
|
||||
/client/proc/cmd_admin_pm_context, /*right-click adminPM interface*/
|
||||
/client/proc/cmd_admin_pm_panel, /*admin-pm list*/
|
||||
/client/proc/cmd_admin_subtle_message, /*send an message to somebody as a 'voice in their head'*/
|
||||
/client/proc/cmd_mentor_check_new_players,
|
||||
/client/proc/cmd_mod_say,
|
||||
/client/proc/debug_variables, /*allows us to -see- the variables of any instance in the game.*/
|
||||
/client/proc/dsay,
|
||||
/client/proc/hide_most_verbs,
|
||||
/client/proc/jobbans,
|
||||
/client/proc/player_panel,
|
||||
/client/proc/player_panel_new,
|
||||
/client/proc/toggleadminhelpsound, /*toggles whether we hear a sound when adminhelps/PMs are used*/
|
||||
/client/proc/toggleattacklogs,
|
||||
/client/proc/toggledebuglogs,
|
||||
/client/proc/toggleprayers
|
||||
)
|
||||
|
||||
//verbs which can be hidden - needs work
|
||||
var/list/admin_verbs_hideable = list(
|
||||
/datum/admins/proc/access_news_network,
|
||||
/datum/admins/proc/adjump,
|
||||
/datum/admins/proc/adrev,
|
||||
/datum/admins/proc/adspawn,
|
||||
/datum/admins/proc/announce,
|
||||
/datum/admins/proc/delay,
|
||||
/datum/admins/proc/immreboot,
|
||||
/datum/admins/proc/restart,
|
||||
/datum/admins/proc/show_traitor_panel,
|
||||
/datum/admins/proc/startnow,
|
||||
/datum/admins/proc/toggleaban,
|
||||
/datum/admins/proc/toggleAI,
|
||||
/datum/admins/proc/toggle_aliens,
|
||||
/datum/admins/proc/toggleenter,
|
||||
/datum/admins/proc/toggleguests,
|
||||
/datum/admins/proc/toggle_space_ninja,
|
||||
/datum/admins/proc/view_txt_log,
|
||||
/datum/admins/proc/view_atk_log,
|
||||
/client/proc/admin_call_shuttle,
|
||||
/client/proc/admin_cancel_shuttle,
|
||||
/client/proc/admin_ghost,
|
||||
/client/proc/air_report,
|
||||
/client/proc/callproc,
|
||||
/client/proc/check_words,
|
||||
/client/proc/cinematic,
|
||||
/client/proc/cmd_admin_add_freeform_ai_law,
|
||||
/client/proc/cmd_admin_add_random_ai_law,
|
||||
/client/proc/cmd_admin_check_contents,
|
||||
/client/proc/cmd_admin_create_centcom_report,
|
||||
/client/proc/cmd_admin_direct_narrate,
|
||||
/client/proc/cmd_admin_dress,
|
||||
/client/proc/cmd_admin_gib_self,
|
||||
/client/proc/cmd_admin_subtle_message,
|
||||
/client/proc/cmd_admin_world_narrate,
|
||||
/client/proc/cmd_debug_make_powernets,
|
||||
/client/proc/cmd_debug_mob_lists,
|
||||
/client/proc/cmd_admin_list_open_jobs,
|
||||
/client/proc/cmd_debug_del_all,
|
||||
/client/proc/cmd_debug_tog_aliens,
|
||||
/client/proc/colorooc,
|
||||
// /client/proc/deadchat,
|
||||
/client/proc/deadmin_self,
|
||||
/client/proc/Debug2,
|
||||
/client/proc/debug_controller,
|
||||
/client/proc/drop_bomb,
|
||||
/client/proc/enable_debug_verbs,
|
||||
/client/proc/everyone_random,
|
||||
/client/proc/kill_air,
|
||||
/client/proc/kill_airgroup,
|
||||
/client/proc/make_area_sound,
|
||||
/client/proc/make_sound,
|
||||
/client/proc/object_talk,
|
||||
/client/proc/play_local_sound,
|
||||
/client/proc/play_sound,
|
||||
/client/proc/reload_admins,
|
||||
/client/proc/restart_controller,
|
||||
/client/proc/send_space_ninja,
|
||||
/client/proc/Set_Holiday,
|
||||
/client/proc/set_ooc,
|
||||
/client/proc/startSinglo,
|
||||
/client/proc/toggle_hear_radio,
|
||||
/client/proc/toggle_log_hrefs,
|
||||
/client/proc/toggleprayers,
|
||||
/client/proc/toggle_random_events,
|
||||
/client/proc/toggle_view_range,
|
||||
/client/proc/ToRban,
|
||||
/proc/possess,
|
||||
/proc/release
|
||||
)
|
||||
|
||||
/client/proc/remove_admin_verbs()
|
||||
verbs.Remove(
|
||||
admin_verbs_default,
|
||||
/client/proc/togglebuildmodeself,
|
||||
/client/proc/stealth,
|
||||
admin_verbs_admin,
|
||||
admin_verbs_ban,
|
||||
admin_verbs_fun,
|
||||
admin_verbs_server,
|
||||
admin_verbs_debug,
|
||||
admin_verbs_possess,
|
||||
admin_verbs_permissions,
|
||||
admin_verbs_rejuv,
|
||||
admin_verbs_sounds,
|
||||
admin_verbs_spawn,
|
||||
admin_verbs_dev,
|
||||
admin_verbs_duty,
|
||||
/*Debug verbs added by "show debug verbs"*/
|
||||
/client/proc/Cell,
|
||||
/client/proc/do_not_use_these,
|
||||
/client/proc/camera_view,
|
||||
/client/proc/sec_camera_report,
|
||||
/client/proc/intercom_view,
|
||||
/client/proc/air_status,
|
||||
/client/proc/atmosscan,
|
||||
/client/proc/powerdebug,
|
||||
/client/proc/count_objects_on_z_level,
|
||||
/client/proc/count_objects_all,
|
||||
/client/proc/cmd_assume_direct_control,
|
||||
/client/proc/jump_to_dead_group,
|
||||
/client/proc/startSinglo,
|
||||
/client/proc/ticklag,
|
||||
/client/proc/cmd_admin_grantfullaccess,
|
||||
/client/proc/kaboom,
|
||||
/client/proc/splash,
|
||||
/client/proc/cmd_admin_areatest,
|
||||
/client/proc/view_power_update_stats_area,
|
||||
/client/proc/view_power_update_stats_machines,
|
||||
/client/proc/toggle_power_update_profiling,
|
||||
/client/proc/atmos_toggle_debug
|
||||
)
|
||||
|
||||
var/list/admin_verbs_duty = list(
|
||||
/client/proc/spawn_duty_officer,
|
||||
/client/proc/cmd_duty_say,
|
||||
/client/verb/returntobody
|
||||
)
|
||||
|
||||
/client/proc/add_admin_verbs()
|
||||
if(holder)
|
||||
verbs += admin_verbs_default
|
||||
if(holder.rights & R_BUILDMODE) verbs += /client/proc/togglebuildmodeself
|
||||
if(holder.rights & R_ADMIN) verbs += admin_verbs_admin
|
||||
if(holder.rights & R_BAN) verbs += admin_verbs_ban
|
||||
if(holder.rights & R_FUN) verbs += admin_verbs_fun
|
||||
if(holder.rights & R_SERVER) verbs += admin_verbs_server
|
||||
if(holder.rights & R_DEBUG) verbs += admin_verbs_debug
|
||||
if(holder.rights & R_POSSESS) verbs += admin_verbs_possess
|
||||
if(holder.rights & R_PERMISSIONS) verbs += admin_verbs_permissions
|
||||
if(holder.rights & R_STEALTH) verbs += /client/proc/stealth
|
||||
if(holder.rights & R_REJUVINATE) verbs += admin_verbs_rejuv
|
||||
if(holder.rights & R_SOUNDS) verbs += admin_verbs_sounds
|
||||
if(holder.rights & R_SPAWN) verbs += admin_verbs_spawn
|
||||
if(holder.rights & R_MOD) verbs += admin_verbs_mod
|
||||
if(holder.rights & R_DEV) verbs += admin_verbs_dev
|
||||
if(holder.rights & R_DUTYOFF) verbs += admin_verbs_duty //hehe duty
|
||||
@@ -333,6 +333,9 @@
|
||||
|
||||
for(var/mob/M in mobs)
|
||||
if(!M.ckey) continue
|
||||
if(M.client && M.client.holder && M.client.holder.fakekey)
|
||||
if(!usr.client.holder.rights & (R_ADMIN|R_MOD))
|
||||
continue
|
||||
|
||||
dat += "<tr><td>[M.name]</td>"
|
||||
if(isAI(M))
|
||||
|
||||
@@ -1554,7 +1554,6 @@
|
||||
src.owner << "Message reply to transmitted successfully."
|
||||
log_admin("[key_name(src.owner)] replied to a fax message from [key_name(H)]: [input]")
|
||||
message_admins("[key_name_admin(src.owner)] replied to a fax message from [key_name_admin(H)] <a href='?_src_=holder;CentcommFaxView=\ref[input]'>view message</a>", 1)
|
||||
message_mods("[key_name_admin(src.owner)] replied to a fax message from [key_name_admin(H)]")
|
||||
|
||||
|
||||
else if(href_list["jumpto"])
|
||||
|
||||
@@ -49,7 +49,25 @@
|
||||
log_admin("[key_name(src)] : [msg]")
|
||||
|
||||
if(check_rights(R_DEV,0))
|
||||
msg = "<span class='devsay'><span class='prefix'>DEV:</span> <EM>[key_name(usr, 1)]</EM>: <span class='message'>[msg]</span></span>"
|
||||
msg = "<span class='devsay'><span class='prefix'>DEV:</span> <EM>[key_name(usr, 0, 1, 0)]</EM>: <span class='message'>[msg]</span></span>"
|
||||
for(var/client/C in admins)
|
||||
if(R_DEV & C.holder.rights)
|
||||
C << msg
|
||||
|
||||
/client/proc/cmd_duty_say(msg as text)
|
||||
set category = "Admin"
|
||||
set name = "Dosay"
|
||||
set hidden = 1
|
||||
|
||||
if(!check_rights(R_DUTYOFF)) return
|
||||
|
||||
msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
|
||||
if(!msg) return
|
||||
|
||||
log_admin("[key_name(src)] : [msg]")
|
||||
|
||||
if(check_rights(R_DUTYOFF,0))
|
||||
msg = "<span class='dutysay'><span class='prefix'>DOfficer:</span> <EM>[key_name(usr, 0, 1, 0)]</EM>: <span class='message'>[msg]</span></span>"
|
||||
for(var/client/C in admins)
|
||||
if(C.holder.rights & (R_ADMIN|R_DUTYOFF))
|
||||
C << msg
|
||||
@@ -20,7 +20,7 @@
|
||||
msg = "\blue \icon[cross] <b><font color=purple>PRAY: </font>[key_name(src, 1)] (<A HREF='?_src_=holder;adminmoreinfo=\ref[src]'>?</A>) (<A HREF='?_src_=holder;adminplayeropts=\ref[src]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[src]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[src]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[src]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;adminspawncookie=\ref[src]'>SC</a>):</b> [msg]"
|
||||
|
||||
for(var/client/C in admins)
|
||||
if(((R_ADMIN & C.holder.rights) || (R_MOD & C.holder.rights)) || (R_FUN & C.holder.rights) && (C.prefs.toggles & CHAT_PRAYER))
|
||||
if(C.holder.rights & (R_ADMIN|R_MOD|R_FUN) && (C.prefs.toggles & CHAT_PRAYER))
|
||||
C << msg
|
||||
usr << "Your prayers have been received by the gods."
|
||||
|
||||
@@ -35,12 +35,12 @@
|
||||
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]"
|
||||
for(var/client/C in admins)
|
||||
if((R_ADMIN & C.holder.rights) || (R_MOD & C.holder.rights) || (R_FUN & C.holder.rights))
|
||||
if(C.holder.rights & (R_ADMIN|R_DUTYOFF|R_FUN))
|
||||
C << msg
|
||||
|
||||
/proc/Syndicate_announce(var/text , var/mob/Sender)
|
||||
var/msg = copytext(sanitize(text), 1, MAX_MESSAGE_LEN)
|
||||
msg = "\blue <b><font color=crimson>SYNDICATE:</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;SyndicateReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
for(var/client/C in admins)
|
||||
if((R_ADMIN & C.holder.rights) || (R_MOD & C.holder.rights) || (R_FUN & C.holder.rights))
|
||||
if(C.holder.rights & (R_ADMIN|R_MOD|R_FUN))
|
||||
C << msg
|
||||
Reference in New Issue
Block a user