mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 04:27:35 +01:00
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,778 @@
|
||||
//GUYS REMEMBER TO ADD A += to UPDATE_ADMINS
|
||||
//AND A -= TO CLEAR_ADMIN_VERBS
|
||||
|
||||
/client/proc/update_admins(var/rank)
|
||||
|
||||
if(!src.holder)
|
||||
src.holder = new /obj/admins(src)
|
||||
|
||||
src.holder.rank = rank
|
||||
|
||||
if(!src.holder.state)
|
||||
var/state = alert("Which state do you the admin to begin in?", "Admin-state", "Play", "Observe", "Neither")
|
||||
if(state == "Play")
|
||||
src.holder.state = 1
|
||||
src.admin_play()
|
||||
return
|
||||
else if(state == "Observe")
|
||||
src.holder.state = 2
|
||||
src.admin_observe()
|
||||
return
|
||||
else
|
||||
del(src.holder)
|
||||
return
|
||||
|
||||
switch (rank)
|
||||
if ("Host")
|
||||
src.deadchat = 1
|
||||
src.holder.level = 6
|
||||
src.verbs += /client/proc/cmd_admin_delete
|
||||
src.verbs += /proc/possess
|
||||
src.verbs += /client/proc/cmd_admin_add_random_ai_law
|
||||
src.verbs += /proc/release
|
||||
src.verbs += /proc/givetestverbs
|
||||
src.verbs += /obj/admins/proc/togglegoonsay
|
||||
src.verbs += /client/proc/debug_variables
|
||||
src.verbs += /client/proc/cmd_modify_object_variables
|
||||
src.verbs += /client/proc/cmd_modify_ticker_variables
|
||||
src.verbs += /client/proc/cmd_admin_pm
|
||||
src.verbs += /client/proc/cmd_admin_say
|
||||
src.verbs += /client/proc/dsay
|
||||
src.verbs += /client/proc/cmd_admin_check_contents
|
||||
src.verbs += /client/proc/cmd_debug_del_all
|
||||
src.verbs += /client/proc/play_sound
|
||||
src.verbs += /client/proc/modifytemperature
|
||||
src.verbs += /client/proc/cmd_admin_gib
|
||||
src.verbs += /client/proc/cmd_admin_gib_self
|
||||
src.verbs += /proc/toggle_adminmsg
|
||||
// src.verbs += /client/proc/grillify
|
||||
src.verbs += /client/proc/jumptomob
|
||||
src.verbs += /client/proc/Jump
|
||||
src.verbs += /client/proc/jumptoturf
|
||||
src.verbs += /client/proc/cmd_admin_rejuvenate
|
||||
src.verbs += /client/proc/cmd_admin_robotize
|
||||
src.verbs += /client/proc/cmd_admin_alienize
|
||||
src.verbs += /client/proc/cmd_admin_changelinginize
|
||||
src.verbs += /client/proc/Cell
|
||||
src.verbs += /client/proc/ticklag
|
||||
src.verbs += /client/proc/cmd_admin_mute
|
||||
src.verbs += /client/proc/cmd_admin_drop_everything
|
||||
src.verbs += /client/proc/cmd_admin_godmode
|
||||
src.verbs += /client/proc/get_admin_state
|
||||
src.verbs += /client/proc/cmd_admin_add_freeform_ai_law
|
||||
// src.verbs += /client/proc/getmobs
|
||||
// src.verbs += /client/proc/cmd_admin_list_admins
|
||||
src.verbs += /client/proc/cmd_admin_list_occ
|
||||
src.verbs += /proc/togglebuildmode
|
||||
src.verbs += /client/proc/jumptokey
|
||||
src.verbs += /client/proc/Getmob
|
||||
src.verbs += /client/proc/jobbans
|
||||
src.verbs += /client/proc/sendmob
|
||||
src.verbs += /client/proc/Debug2 //debug toggle switch
|
||||
src.verbs += /client/proc/callproc
|
||||
src.verbs += /client/proc/funbutton
|
||||
src.verbs += /client/proc/cmd_admin_prison
|
||||
src.verbs += /obj/admins/proc/vmode //start vote
|
||||
src.verbs += /obj/admins/proc/votekill //abort vote
|
||||
src.verbs += /obj/admins/proc/voteres //toggle votes
|
||||
src.verbs += /obj/admins/proc/restart //restart
|
||||
src.verbs += /obj/admins/proc/immreboot //immediate reboot
|
||||
src.verbs += /obj/admins/proc/announce //global announce
|
||||
src.verbs += /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling
|
||||
src.verbs += /obj/admins/proc/startnow //start now bitch
|
||||
src.verbs += /obj/admins/proc/toggleenter //Toggle enterting
|
||||
src.verbs += /obj/admins/proc/toggleAI //Toggle the AI
|
||||
src.verbs += /obj/admins/proc/toggleaban //abandon mob
|
||||
src.verbs += /obj/admins/proc/delay //game start delay
|
||||
src.verbs += /client/proc/deadchat //toggles deadchat
|
||||
src.verbs += /obj/admins/proc/adrev //toggle admin revives
|
||||
src.verbs += /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
src.verbs += /obj/admins/proc/adjump //toggle admin jumping
|
||||
src.verbs += /obj/admins/proc/unprison
|
||||
src.verbs += /client/proc/cmd_admin_create_centcom_report
|
||||
src.verbs += /client/proc/cmd_admin_subtle_message
|
||||
src.verbs += /client/proc/cmd_admin_world_narrate // -- TLE
|
||||
src.verbs += /client/proc/cmd_admin_direct_narrate // -- TLE
|
||||
src.verbs += /client/proc/drop_bomb // -- TLE
|
||||
src.verbs += /client/proc/make_cultist // -- TLE
|
||||
src.verbs += /client/proc/make_sound // -- TLE
|
||||
src.verbs += /client/proc/object_talk // -- TLE
|
||||
src.verbs += /client/proc/kill_air // -- TLE
|
||||
src.verbs += /client/proc/cmd_admin_abominize // -- TLE
|
||||
src.verbs += /client/proc/cmd_admin_remove_plasma
|
||||
|
||||
src.verbs += /client/proc/general_report
|
||||
src.verbs += /client/proc/air_report
|
||||
src.verbs += /client/proc/air_status
|
||||
src.verbs += /client/proc/fix_next_move
|
||||
|
||||
src.verbs += /client/proc/toggle_view_range
|
||||
src.verbs += /obj/admins/proc/toggle_aliens
|
||||
src.verbs += /client/proc/warn
|
||||
if ("Coder")
|
||||
src.deadchat = 1
|
||||
src.holder.level = 5
|
||||
src.verbs += /client/proc/cmd_admin_delete
|
||||
src.verbs += /proc/possess
|
||||
src.verbs += /client/proc/cmd_admin_add_random_ai_law
|
||||
src.verbs += /proc/release
|
||||
src.verbs += /proc/givetestverbs
|
||||
src.verbs += /obj/admins/proc/togglegoonsay
|
||||
src.verbs += /client/proc/debug_variables
|
||||
src.verbs += /client/proc/cmd_debug_tog_aliens
|
||||
src.verbs += /client/proc/cmd_modify_object_variables
|
||||
src.verbs += /client/proc/cmd_modify_ticker_variables
|
||||
src.verbs += /client/proc/cmd_admin_pm
|
||||
src.verbs += /client/proc/cmd_admin_say
|
||||
src.verbs += /client/proc/dsay
|
||||
src.verbs += /client/proc/cmd_admin_check_contents
|
||||
src.verbs += /client/proc/cmd_debug_del_all
|
||||
src.verbs += /client/proc/play_sound
|
||||
src.verbs += /client/proc/modifytemperature
|
||||
src.verbs += /client/proc/cmd_admin_gib
|
||||
src.verbs += /client/proc/cmd_admin_gib_self
|
||||
// src.verbs += /proc/toggleai
|
||||
src.verbs += /proc/toggle_adminmsg
|
||||
src.verbs += /proc/togglebuildmode
|
||||
// src.verbs += /client/proc/grillify
|
||||
src.verbs += /client/proc/jumptomob
|
||||
src.verbs += /client/proc/Jump
|
||||
src.verbs += /client/proc/jumptoturf
|
||||
src.verbs += /client/proc/cmd_admin_rejuvenate
|
||||
src.verbs += /client/proc/cmd_admin_robotize
|
||||
src.verbs += /client/proc/cmd_admin_alienize
|
||||
src.verbs += /client/proc/cmd_admin_changelinginize
|
||||
src.verbs += /client/proc/Cell
|
||||
src.verbs += /client/proc/ticklag
|
||||
src.verbs += /client/proc/cmd_admin_mute
|
||||
src.verbs += /client/proc/cmd_admin_drop_everything
|
||||
src.verbs += /client/proc/cmd_admin_godmode
|
||||
src.verbs += /client/proc/get_admin_state
|
||||
src.verbs += /client/proc/cmd_admin_add_freeform_ai_law
|
||||
// src.verbs += /client/proc/getmobs
|
||||
// src.verbs += /client/proc/cmd_admin_list_admins
|
||||
src.verbs += /client/proc/cmd_admin_list_occ
|
||||
src.verbs += /client/proc/jumptokey
|
||||
src.verbs += /client/proc/Getmob
|
||||
src.verbs += /client/proc/jobbans
|
||||
src.verbs += /client/proc/sendmob
|
||||
src.verbs += /client/proc/Debug2 //debug toggle switch
|
||||
src.verbs += /client/proc/callproc
|
||||
src.verbs += /client/proc/funbutton
|
||||
src.verbs += /client/proc/cmd_admin_prison
|
||||
src.verbs += /obj/admins/proc/vmode //start vote
|
||||
src.verbs += /obj/admins/proc/votekill //abort vote
|
||||
src.verbs += /obj/admins/proc/voteres //toggle votes
|
||||
src.verbs += /obj/admins/proc/restart //restart
|
||||
src.verbs += /obj/admins/proc/immreboot //immediate reboot
|
||||
src.verbs += /obj/admins/proc/announce //global announce
|
||||
src.verbs += /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs += /obj/admins/proc/toggletraitorscaling
|
||||
src.verbs += /obj/admins/proc/startnow //start now bitch
|
||||
src.verbs += /obj/admins/proc/toggleenter //Toggle enterting
|
||||
src.verbs += /obj/admins/proc/toggleAI //Toggle the AI
|
||||
src.verbs += /obj/admins/proc/toggleaban //abandon mob
|
||||
src.verbs += /obj/admins/proc/delay //game start delay
|
||||
src.verbs += /client/proc/deadchat //toggles deadchat
|
||||
src.verbs += /obj/admins/proc/adrev //toggle admin revives
|
||||
src.verbs += /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
src.verbs += /obj/admins/proc/adjump //toggle admin jumping
|
||||
src.verbs += /obj/admins/proc/unprison
|
||||
src.verbs += /client/proc/cmd_admin_create_centcom_report
|
||||
src.verbs += /client/proc/cmd_admin_subtle_message
|
||||
src.verbs += /client/proc/cmd_admin_remove_plasma
|
||||
|
||||
src.verbs += /client/proc/general_report
|
||||
src.verbs += /client/proc/air_report
|
||||
src.verbs += /client/proc/air_status
|
||||
src.verbs += /client/proc/fix_next_move
|
||||
src.verbs += /obj/admins/proc/spawn_atom
|
||||
|
||||
src.verbs += /client/proc/toggle_view_range
|
||||
src.verbs += /obj/admins/proc/toggle_aliens
|
||||
src.verbs += /client/proc/warn
|
||||
|
||||
src.verbs += /client/proc/cmd_admin_world_narrate // -- TLE
|
||||
src.verbs += /client/proc/cmd_admin_direct_narrate // -- TLE
|
||||
|
||||
if ("Shit Guy")
|
||||
src.deadchat = 1
|
||||
src.holder.level = 4
|
||||
src.verbs += /obj/admins/proc/togglegoonsay
|
||||
src.verbs += /client/proc/debug_variables
|
||||
src.verbs += /proc/possess
|
||||
src.verbs += /client/proc/cmd_admin_add_random_ai_law
|
||||
src.verbs += /client/proc/cmd_modify_object_variables
|
||||
src.verbs += /client/proc/cmd_modify_ticker_variables
|
||||
src.verbs += /client/proc/cmd_admin_pm
|
||||
src.verbs += /client/proc/cmd_admin_say
|
||||
src.verbs += /client/proc/dsay
|
||||
src.verbs += /client/proc/play_sound
|
||||
src.verbs += /client/proc/cmd_admin_gib
|
||||
src.verbs += /client/proc/cmd_admin_gib_self
|
||||
src.verbs += /client/proc/jumptomob
|
||||
src.verbs += /client/proc/modifytemperature
|
||||
src.verbs += /proc/toggle_adminmsg
|
||||
// src.verbs += /client/proc/grillify
|
||||
src.verbs += /client/proc/cmd_admin_check_contents
|
||||
src.verbs += /proc/togglebuildmode
|
||||
src.verbs += /client/proc/Jump
|
||||
src.verbs += /client/proc/jumptoturf
|
||||
src.verbs += /client/proc/cmd_admin_rejuvenate
|
||||
src.verbs += /client/proc/cmd_admin_delete
|
||||
src.verbs += /client/proc/cmd_admin_mute
|
||||
src.verbs += /client/proc/cmd_admin_drop_everything
|
||||
src.verbs += /client/proc/cmd_admin_robotize
|
||||
src.verbs += /client/proc/cmd_admin_godmode
|
||||
src.verbs += /client/proc/cmd_admin_add_freeform_ai_law
|
||||
src.verbs += /client/proc/funbutton
|
||||
src.verbs += /client/proc/jumptokey
|
||||
// src.verbs += /client/proc/cmd_admin_list_admins
|
||||
src.verbs += /client/proc/Getmob
|
||||
src.verbs += /client/proc/sendmob
|
||||
src.verbs += /client/proc/cmd_admin_prison
|
||||
src.verbs += /client/proc/Debug2
|
||||
src.verbs += /client/proc/jobbans
|
||||
src.verbs += /client/proc/deadchat //toggles deadchat
|
||||
src.verbs += /obj/admins/proc/immreboot //immediate reboot
|
||||
src.verbs += /obj/admins/proc/vmode //start vote
|
||||
src.verbs += /obj/admins/proc/votekill //abort vote
|
||||
src.verbs += /obj/admins/proc/voteres //toggle votes
|
||||
src.verbs += /obj/admins/proc/restart //restart
|
||||
src.verbs += /obj/admins/proc/announce //global announce
|
||||
src.verbs += /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs += /obj/admins/proc/toggletraitorscaling
|
||||
src.verbs += /obj/admins/proc/startnow //start now bitch
|
||||
src.verbs += /obj/admins/proc/toggleenter //Toggle enterting
|
||||
src.verbs += /obj/admins/proc/toggleAI //Toggle the AI
|
||||
src.verbs += /obj/admins/proc/toggleaban //abandon mob
|
||||
src.verbs += /obj/admins/proc/delay //game start delay
|
||||
src.verbs += /obj/admins/proc/adrev //toggle admin revives
|
||||
src.verbs += /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
src.verbs += /obj/admins/proc/adjump //toggle admin jumping
|
||||
src.verbs += /obj/admins/proc/unprison
|
||||
src.verbs += /client/proc/cmd_admin_remove_plasma
|
||||
src.verbs += /client/proc/cmd_admin_create_centcom_report
|
||||
src.verbs += /client/proc/cmd_admin_subtle_message
|
||||
|
||||
src.verbs += /client/proc/general_report
|
||||
src.verbs += /client/proc/air_report
|
||||
src.verbs += /client/proc/air_status
|
||||
src.verbs += /client/proc/fix_next_move
|
||||
|
||||
src.verbs += /client/proc/toggle_view_range
|
||||
src.verbs += /client/proc/warn
|
||||
|
||||
if ("Primary Administrator")
|
||||
|
||||
src.deadchat = 1
|
||||
src.holder.level = 3
|
||||
|
||||
if(src.holder.state == 2) //observing
|
||||
|
||||
src.verbs += /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs += /obj/admins/proc/toggletraitorscaling
|
||||
src.verbs += /client/proc/cmd_admin_drop_everything
|
||||
src.verbs += /obj/admins/proc/togglegoonsay
|
||||
src.verbs += /client/proc/debug_variables
|
||||
src.verbs += /client/proc/cmd_modify_object_variables
|
||||
src.verbs += /client/proc/cmd_modify_ticker_variables
|
||||
// src.verbs += /client/proc/cmd_admin_gib
|
||||
src.verbs += /client/proc/jumptokey
|
||||
src.verbs += /client/proc/jumptomob
|
||||
src.verbs += /client/proc/Jump
|
||||
src.verbs += /client/proc/jumptoturf
|
||||
src.verbs += /client/proc/Getmob
|
||||
src.verbs += /client/proc/sendmob
|
||||
src.verbs += /client/proc/cmd_admin_add_freeform_ai_law
|
||||
src.verbs += /client/proc/cmd_admin_rejuvenate
|
||||
src.verbs += /obj/admins/proc/toggleaban //abandon mob
|
||||
src.verbs += /client/proc/toggle_view_range
|
||||
|
||||
src.verbs += /client/proc/debug_variables
|
||||
src.verbs += /proc/togglebuildmode
|
||||
src.verbs += /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs += /obj/admins/proc/toggletraitorscaling
|
||||
src.verbs += /obj/admins/proc/togglegoonsay
|
||||
src.verbs += /client/proc/cmd_admin_say
|
||||
src.verbs += /client/proc/dsay
|
||||
src.verbs += /client/proc/cmd_admin_add_random_ai_law
|
||||
src.verbs += /client/proc/play_sound
|
||||
// src.verbs += /client/proc/cmd_admin_list_admins
|
||||
src.verbs += /client/proc/cmd_admin_pm
|
||||
src.verbs += /client/proc/cmd_admin_mute
|
||||
src.verbs += /client/proc/cmd_admin_check_contents
|
||||
src.verbs += /client/proc/cmd_admin_gib_self
|
||||
src.verbs += /client/proc/cmd_admin_remove_plasma
|
||||
|
||||
// src.verbs += /client/proc/modifytemperature
|
||||
// src.verbs += /client/proc/grillify
|
||||
|
||||
src.verbs += /client/proc/cmd_admin_prison
|
||||
|
||||
src.verbs += /obj/admins/proc/vmode //start vote
|
||||
src.verbs += /obj/admins/proc/votekill //abort vote
|
||||
src.verbs += /obj/admins/proc/voteres //toggle votes
|
||||
src.verbs += /obj/admins/proc/restart //restart
|
||||
src.verbs += /obj/admins/proc/immreboot //immediate reboot
|
||||
src.verbs += /obj/admins/proc/announce //global announce
|
||||
src.verbs += /obj/admins/proc/startnow //start now bitch
|
||||
src.verbs += /obj/admins/proc/toggleenter //Toggle enterting
|
||||
src.verbs += /obj/admins/proc/toggleAI //Toggle the AI
|
||||
|
||||
src.verbs += /obj/admins/proc/delay //game start delay
|
||||
src.verbs += /client/proc/deadchat //toggles deadchat
|
||||
// src.verbs += /obj/admins/proc/adrev //toggle admin revives
|
||||
// src.verbs += /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
// src.verbs += /obj/admins/proc/adjump //toggle admin jumping
|
||||
src.verbs += /obj/admins/proc/unprison
|
||||
src.verbs += /client/proc/cmd_admin_create_centcom_report
|
||||
src.verbs += /client/proc/cmd_admin_subtle_message
|
||||
src.verbs += /client/proc/warn
|
||||
|
||||
if ("Administrator")
|
||||
|
||||
src.holder.level = 2
|
||||
|
||||
if(src.holder.state == 2) //observing
|
||||
src.deadchat = 1
|
||||
src.verbs += /client/proc/Jump
|
||||
src.verbs += /client/proc/cmd_admin_check_contents
|
||||
src.verbs += /client/proc/jumptomob
|
||||
src.verbs += /client/proc/jumptokey
|
||||
src.verbs += /obj/admins/proc/toggleaban //abandon mob
|
||||
src.verbs += /client/proc/deadchat //toggles deadchat
|
||||
|
||||
src.verbs += /obj/admins/proc/togglegoonsay
|
||||
src.verbs += /client/proc/cmd_admin_pm
|
||||
src.verbs += /client/proc/cmd_admin_say
|
||||
src.verbs += /client/proc/dsay
|
||||
src.verbs += /client/proc/cmd_admin_gib_self
|
||||
// src.verbs += /client/proc/play_sound
|
||||
src.verbs += /client/proc/cmd_admin_mute
|
||||
src.verbs += /client/proc/cmd_admin_prison
|
||||
src.verbs += /client/proc/cmd_admin_add_random_ai_law
|
||||
src.verbs += /obj/admins/proc/vmode //start vote
|
||||
src.verbs += /obj/admins/proc/votekill //abort vote
|
||||
src.verbs += /obj/admins/proc/voteres //toggle votes
|
||||
src.verbs += /obj/admins/proc/restart //restart
|
||||
src.verbs += /obj/admins/proc/immreboot //immediate reboot
|
||||
src.verbs += /obj/admins/proc/announce //global announce
|
||||
src.verbs += /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs += /obj/admins/proc/toggletraitorscaling
|
||||
src.verbs += /obj/admins/proc/startnow //start now bitch
|
||||
src.verbs += /obj/admins/proc/toggleenter //Toggle enterting
|
||||
src.verbs += /obj/admins/proc/toggleAI //Toggle the AI
|
||||
|
||||
src.verbs += /obj/admins/proc/delay //game start delay
|
||||
|
||||
// src.verbs += /obj/admins/proc/adrev //toggle admin revives
|
||||
// src.verbs += /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
// src.verbs += /obj/admins/proc/adjump //toggle admin jumping
|
||||
src.verbs += /obj/admins/proc/unprison
|
||||
src.verbs += /client/proc/cmd_admin_create_centcom_report
|
||||
src.verbs += /client/proc/cmd_admin_subtle_message
|
||||
src.verbs += /client/proc/warn
|
||||
|
||||
if ("Secondary Administrator")
|
||||
src.holder.level = 1
|
||||
|
||||
if(src.holder.state == 2) //observing
|
||||
src.verbs += /obj/admins/proc/toggleaban //abandon mob
|
||||
src.verbs += /client/proc/cmd_admin_check_contents
|
||||
|
||||
src.verbs += /obj/admins/proc/togglegoonsay
|
||||
src.verbs += /client/proc/cmd_admin_pm
|
||||
|
||||
src.verbs += /client/proc/cmd_admin_say
|
||||
src.verbs += /client/proc/dsay
|
||||
src.verbs += /client/proc/cmd_admin_prison
|
||||
src.verbs += /client/proc/cmd_admin_gib_self
|
||||
src.verbs += /obj/admins/proc/vmode //start vote
|
||||
src.verbs += /obj/admins/proc/votekill //abort vote
|
||||
src.verbs += /obj/admins/proc/voteres //toggle votes
|
||||
src.verbs += /obj/admins/proc/restart //restart
|
||||
src.verbs += /obj/admins/proc/immreboot //immediate reboot
|
||||
src.verbs += /obj/admins/proc/announce //global announce
|
||||
src.verbs += /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs += /obj/admins/proc/startnow //start now bitch
|
||||
src.verbs += /obj/admins/proc/toggleenter //Toggle enterting
|
||||
src.verbs += /obj/admins/proc/toggleAI //Toggle the AI
|
||||
|
||||
src.verbs += /obj/admins/proc/delay //game start delay
|
||||
// src.verbs += /obj/admins/proc/adrev //toggle admin revives
|
||||
// src.verbs += /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
// src.verbs += /obj/admins/proc/adjump //toggle admin jumping
|
||||
src.verbs += /obj/admins/proc/unprison
|
||||
src.verbs += /client/proc/cmd_admin_create_centcom_report
|
||||
src.verbs += /client/proc/cmd_admin_subtle_message
|
||||
src.verbs += /client/proc/warn
|
||||
|
||||
if ("Moderator")
|
||||
src.holder.level = 0
|
||||
src.verbs += /obj/admins/proc/togglegoonsay
|
||||
src.verbs += /client/proc/cmd_admin_pm
|
||||
src.verbs += /client/proc/cmd_admin_say
|
||||
src.verbs += /client/proc/dsay
|
||||
src.verbs += /client/proc/cmd_admin_prison
|
||||
src.verbs += /client/proc/cmd_admin_gib_self
|
||||
src.verbs += /obj/admins/proc/vmode //start vote
|
||||
src.verbs += /obj/admins/proc/votekill //abort vote
|
||||
src.verbs += /obj/admins/proc/voteres //toggle votes
|
||||
// src.verbs += /obj/admins/proc/restart //restart
|
||||
// src.verbs += /obj/admins/proc/boot //boot someone
|
||||
// src.verbs += /obj/admins/proc/immreboot //immediate reboot
|
||||
src.verbs += /obj/admins/proc/announce //global announce
|
||||
src.verbs += /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs += /obj/admins/proc/startnow //start now
|
||||
// src.verbs += /obj/admins/proc/toggleenter //Toggle enterting
|
||||
src.verbs += /obj/admins/proc/toggleAI //Toggle the AI
|
||||
// src.verbs += /obj/admins/proc/toggleaban //abandon mob
|
||||
src.verbs += /obj/admins/proc/delay //game start delay
|
||||
// src.verbs += /obj/admins/proc/adrev //toggle admin revives
|
||||
// src.verbs += /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
// src.verbs += /obj/admins/proc/adjump //toggle admin jumping
|
||||
src.verbs += /obj/admins/proc/unprison
|
||||
src.verbs += /client/proc/cmd_admin_subtle_message
|
||||
src.verbs += /client/proc/warn
|
||||
|
||||
if ("Goat Fart")
|
||||
src.holder.level = -1
|
||||
src.verbs += /client/proc/cmd_admin_say
|
||||
src.verbs += /client/proc/cmd_admin_gib_self
|
||||
|
||||
if ("Banned")
|
||||
del(src)
|
||||
return
|
||||
|
||||
else
|
||||
del(src.holder)
|
||||
return
|
||||
|
||||
if (src.holder)
|
||||
src.holder.owner = src
|
||||
if (src.holder.level > -1)
|
||||
src.verbs += /client/proc/admin_play
|
||||
src.verbs += /client/proc/admin_observe
|
||||
src.verbs += /client/proc/voting
|
||||
src.verbs += /client/proc/game_panel
|
||||
src.verbs += /client/proc/unban_panel
|
||||
src.verbs += /client/proc/player_panel
|
||||
|
||||
if(src.holder.level > 1)
|
||||
src.verbs += /client/proc/stealth
|
||||
|
||||
if(( src.holder.state == 2 ) || ( src.holder.level > 3 ))
|
||||
src.verbs += /client/proc/secrets
|
||||
src.verbs += /client/proc/goons
|
||||
src.verbs += /client/proc/beta_testers
|
||||
|
||||
/client/proc/clear_admin_verbs()
|
||||
src.deadchat = 0
|
||||
src.verbs -= /obj/admins/proc/togglegoonsay
|
||||
src.verbs -= /client/proc/debug_variables
|
||||
src.verbs -= /client/proc/cmd_modify_object_variables
|
||||
src.verbs -= /client/proc/cmd_modify_ticker_variables
|
||||
src.verbs -= /client/proc/cmd_admin_pm
|
||||
src.verbs -= /client/proc/cmd_admin_say
|
||||
src.verbs -= /client/proc/dsay
|
||||
src.verbs -= /client/proc/play_sound
|
||||
src.verbs -= /client/proc/cmd_admin_gib
|
||||
src.verbs -= /client/proc/cmd_admin_gib_self
|
||||
// src.verbs -= /client/proc/modifytemperature
|
||||
// src.verbs -= /client/proc/grillify
|
||||
src.verbs -= /client/proc/Jump
|
||||
src.verbs -= /client/proc/cmd_admin_rejuvenate
|
||||
src.verbs -= /client/proc/funbutton
|
||||
src.verbs -= /client/proc/cmd_admin_delete
|
||||
src.verbs -= /client/proc/cmd_admin_mute
|
||||
src.verbs -= /client/proc/cmd_admin_drop_everything
|
||||
src.verbs -= /client/proc/cmd_debug_tog_aliens
|
||||
src.verbs -= /client/proc/cmd_admin_godmode
|
||||
src.verbs -= /client/proc/cmd_admin_add_freeform_ai_law
|
||||
src.verbs -= /client/proc/cmd_admin_check_contents
|
||||
src.verbs -= /client/proc/jumptomob
|
||||
src.verbs -= /client/proc/jumptokey
|
||||
src.verbs -= /client/proc/cmd_admin_alienize
|
||||
src.verbs -= /client/proc/cmd_admin_changelinginize
|
||||
// src.verbs -= /client/proc/cmd_admin_list_admins
|
||||
src.verbs -= /client/proc/Getmob
|
||||
src.verbs -= /client/proc/sendmob
|
||||
src.verbs -= /client/proc/cmd_admin_prison
|
||||
src.verbs -= /client/proc/Debug2
|
||||
src.verbs -= /client/proc/jobbans
|
||||
src.verbs -= /client/proc/deadchat //toggles deadchat
|
||||
src.verbs -= /obj/admins/proc/immreboot //immediate reboot
|
||||
src.verbs -= /obj/admins/proc/vmode //start vote
|
||||
src.verbs -= /obj/admins/proc/votekill //abort vote
|
||||
src.verbs -= /obj/admins/proc/voteres //toggle votes
|
||||
src.verbs -= /obj/admins/proc/restart //restart
|
||||
src.verbs -= /obj/admins/proc/announce //global announce
|
||||
src.verbs -= /obj/admins/proc/toggleooc //toggle ooc
|
||||
src.verbs -= /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
src.verbs -= /obj/admins/proc/startnow //start now bitch
|
||||
src.verbs -= /obj/admins/proc/toggleenter //Toggle enterting
|
||||
src.verbs -= /obj/admins/proc/toggleAI //Toggle the AI
|
||||
src.verbs -= /obj/admins/proc/toggleaban //abandon mob
|
||||
src.verbs -= /obj/admins/proc/delay //game start delay
|
||||
src.verbs -= /obj/admins/proc/adrev //toggle admin revives
|
||||
src.verbs -= /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
src.verbs -= /obj/admins/proc/adjump //toggle admin jumping
|
||||
src.verbs -= /obj/admins/proc/unprison
|
||||
src.verbs -= /client/proc/cmd_admin_create_centcom_report
|
||||
src.verbs -= /client/proc/game_panel
|
||||
src.verbs -= /client/proc/player_panel
|
||||
src.verbs -= /client/proc/unban_panel
|
||||
src.verbs -= /client/proc/secrets
|
||||
src.verbs -= /client/proc/voting
|
||||
src.verbs -= /client/proc/goons
|
||||
src.verbs -= /client/proc/beta_testers
|
||||
src.verbs -= /client/proc/admin_play
|
||||
src.verbs -= /client/proc/admin_observe
|
||||
src.verbs -= /client/proc/stealth
|
||||
|
||||
src.verbs -= /client/proc/general_report
|
||||
src.verbs -= /client/proc/air_report
|
||||
src.verbs -= /client/proc/air_status
|
||||
|
||||
src.verbs -= /client/proc/toggle_view_range
|
||||
src.verbs -= /obj/admins/proc/toggle_aliens
|
||||
|
||||
if(src.holder)
|
||||
src.holder.level = 0
|
||||
|
||||
|
||||
/client/proc/admin_observe()
|
||||
set category = "Admin"
|
||||
set name = "Set Observe"
|
||||
if(!src.holder)
|
||||
alert("You are not an admin")
|
||||
return
|
||||
/*
|
||||
if(!src.mob.start)
|
||||
alert("You cannot observe while in the starting position")
|
||||
return
|
||||
*/
|
||||
src.verbs -= /client/proc/admin_play
|
||||
spawn( 1200 ) //change this to 1200
|
||||
src.verbs += /client/proc/admin_play
|
||||
var/rank = src.holder.rank
|
||||
clear_admin_verbs()
|
||||
src.holder.state = 2
|
||||
update_admins(rank)
|
||||
if(!istype(src.mob, /mob/dead/observer))
|
||||
src.mob.ghostize()
|
||||
src << "\blue You are now observing"
|
||||
|
||||
/client/proc/admin_play()
|
||||
set category = "Admin"
|
||||
set name = "Set Play"
|
||||
if(!src.holder)
|
||||
alert("You are not an admin")
|
||||
return
|
||||
src.verbs -= /client/proc/admin_observe
|
||||
spawn( 1200 ) //change this to 1200
|
||||
src.verbs += /client/proc/admin_observe
|
||||
var/rank = src.holder.rank
|
||||
clear_admin_verbs()
|
||||
src.holder.state = 1
|
||||
update_admins(rank)
|
||||
if(istype(src.mob, /mob/dead/observer))
|
||||
src.mob:reenter_corpse()
|
||||
src << "\blue You are now playing"
|
||||
|
||||
/client/proc/get_admin_state()
|
||||
set category = "Debug"
|
||||
for(var/mob/M in world)
|
||||
if(M.client && M.client.holder)
|
||||
if(M.client.holder.state == 1)
|
||||
src << "[M.key] is playing - [M.client.holder.state]"
|
||||
else if(M.client.holder.state == 2)
|
||||
src << "[M.key] is observing - [M.client.holder.state]"
|
||||
else
|
||||
src << "[M.key] is undefined - [M.client.holder.state]"
|
||||
|
||||
//admin client procs ported over from mob.dm
|
||||
|
||||
/client/proc/player_panel()
|
||||
set name = "Player Panel"
|
||||
set category = "Admin"
|
||||
if (src.holder)
|
||||
src.holder.player()
|
||||
return
|
||||
|
||||
/client/proc/jobbans()
|
||||
set category = "Debug"
|
||||
if(src.holder)
|
||||
src.holder.Jobbans()
|
||||
return
|
||||
|
||||
/client/proc/unban_panel()
|
||||
set name = "Unban Panel"
|
||||
set category = "Admin"
|
||||
if (src.holder)
|
||||
src.holder.unbanpanel()
|
||||
return
|
||||
|
||||
/client/proc/game_panel()
|
||||
set name = "Game Panel"
|
||||
set category = "Admin"
|
||||
if (src.holder)
|
||||
src.holder.Game()
|
||||
return
|
||||
|
||||
/client/proc/secrets()
|
||||
set name = "Secrets"
|
||||
set category = "Admin"
|
||||
if (src.holder)
|
||||
src.holder.Secrets()
|
||||
return
|
||||
|
||||
/client/proc/goons()
|
||||
set name = "Goons"
|
||||
set category = "Admin"
|
||||
if (src.holder)
|
||||
src.holder.goons()
|
||||
return
|
||||
|
||||
/client/proc/beta_testers()
|
||||
set name = "Testers"
|
||||
set category = "Admin"
|
||||
if (src.holder)
|
||||
src.holder.beta_testers()
|
||||
return
|
||||
|
||||
/client/proc/voting()
|
||||
set name = "Voting"
|
||||
set category = "Admin"
|
||||
if (src.holder)
|
||||
src.holder.Voting()
|
||||
|
||||
/client/proc/funbutton()
|
||||
set category = "Debug"
|
||||
set name = "Boom Boom Boom Shake The Room"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
for(var/turf/simulated/floor/T in world)
|
||||
if(prob(4) && T.z == 1 && istype(T))
|
||||
spawn(50+rand(0,3000))
|
||||
explosion(T, 3, 1)
|
||||
|
||||
usr << "\blue Blowing up station ..."
|
||||
|
||||
log_admin("[key_name(usr)] has used boom boom boom shake the room")
|
||||
message_admins("[key_name_admin(usr)] has used boom boom boom shake the room", 1)
|
||||
|
||||
/client/proc/stealth()
|
||||
set category = "Admin"
|
||||
set name = "Stealth Mode"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
src.stealth = !src.stealth
|
||||
if(src.stealth)
|
||||
var/new_key = trim(input("Enter your desired display name.", "Fake Key", src.key))
|
||||
if(!new_key)
|
||||
src.stealth = 0
|
||||
return
|
||||
new_key = strip_html(new_key)
|
||||
if(length(new_key) >= 26)
|
||||
new_key = copytext(new_key, 1, 26)
|
||||
src.fakekey = new_key
|
||||
else
|
||||
src.fakekey = null
|
||||
log_admin("[key_name(usr)] has turned stealth mode [src.stealth ? "ON" : "OFF"]")
|
||||
message_admins("[key_name_admin(usr)] has turned stealth mode [src.stealth ? "ON" : "OFF"]", 1)
|
||||
|
||||
|
||||
/client/proc/warn(var/mob/M in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Warn"
|
||||
set desc = "Warn a player"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if(M.client && M.client.holder && (M.client.holder.level >= src.holder.level))
|
||||
alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null)
|
||||
return
|
||||
if(!M.client.warned)
|
||||
M << "\red <B>You have been warned by an administrator. This is the only warning you will recieve.</B>"
|
||||
M.client.warned = 1
|
||||
message_admins("\blue [src.ckey] warned [M.ckey].")
|
||||
else
|
||||
AddBan(M.ckey, M.computer_id, "Autobanning due to previous warn", src.ckey, 1, 10)
|
||||
M << "\red<BIG><B>You have been autobanned by [src.ckey]. This is what we in the biz like to call a \"second warning\".</B></BIG>"
|
||||
M << "\red This is a temporary ban; it will automatically be removed in 10 minutes."
|
||||
log_admin("[src.ckey] warned [M.ckey], resulting in a 10 minute autoban.")
|
||||
message_admins("\blue [src.ckey] warned [M.ckey], resulting in a 10 minute autoban.")
|
||||
|
||||
del(M.client)
|
||||
del(M)
|
||||
|
||||
/client/proc/drop_bomb() // Some admin dickery that can probably be done better -- TLE
|
||||
set category = "Special Verbs"
|
||||
set name = "Drop Bomb"
|
||||
set desc = "Spawn a plasma tank with overloaded pressure. Will trigger explosion on next air cycle."
|
||||
var/bomb_strength = input("Enter a value greater than 299:", "Blowing Shit Up", 300) as num
|
||||
if(bomb_strength < 300)
|
||||
return
|
||||
if(!src.mob)
|
||||
return
|
||||
message_admins("\blue [src.ckey] dropping a plasma bomb at [bomb_strength] strength.")
|
||||
var/obj/item/weapon/tank/plasma/P = new(src.mob.loc)
|
||||
P.air_contents.toxins = bomb_strength
|
||||
|
||||
|
||||
/client/proc/make_cultist(var/mob/M in world) // -- TLE
|
||||
set category = "Special Verbs"
|
||||
set name = "Make Cultist"
|
||||
set desc = "Makes target a cultist"
|
||||
if(M)
|
||||
if(cultists.Find(M))
|
||||
return
|
||||
else
|
||||
cultists.Add(M)
|
||||
src << "Made [M] a cultist."
|
||||
|
||||
/client/proc/make_sound(var/obj/O in world) // -- TLE
|
||||
set category = "Special Verbs"
|
||||
set name = "Make Sound"
|
||||
set desc = "Display a message to everyone who can hear the target"
|
||||
if(O)
|
||||
var/message = input("What do you want the message to be?", "Make Sound") as text|null
|
||||
if(!message)
|
||||
return
|
||||
for (var/mob/V in hearers(O))
|
||||
V.show_message(message, 2)
|
||||
|
||||
/client/proc/object_talk(var/msg as text) // -- TLE
|
||||
set category = "Special Verbs"
|
||||
set name = "oSay"
|
||||
set desc = "Display a message to everyone who can hear the target"
|
||||
if(src.mob.control_object)
|
||||
if(!msg)
|
||||
return
|
||||
for (var/mob/V in hearers(src.mob.control_object))
|
||||
V.show_message("<b>[src.mob.control_object.name]</b> says, \"" + msg + "\"", 2)
|
||||
|
||||
/client/proc/kill_air() // -- TLE
|
||||
set category = "Debug"
|
||||
set name = "Kill Air"
|
||||
set desc = "Toggle Air Processing"
|
||||
if(kill_air)
|
||||
kill_air = 0
|
||||
usr << "<b>Enabled air processing.</b>"
|
||||
else
|
||||
kill_air = 1
|
||||
usr << "<b>Disabled air processing.</b>"
|
||||
@@ -0,0 +1,46 @@
|
||||
var
|
||||
jobban_runonce // Updates legacy bans with new info
|
||||
jobban_keylist[0] //to store the keys & ranks
|
||||
|
||||
/proc/jobban_fullban(mob/M, rank)
|
||||
if (!M || !M.key || !M.client) return
|
||||
jobban_keylist.Add(text("[M.ckey] - [rank]"))
|
||||
jobban_savebanfile()
|
||||
|
||||
/proc/jobban_isbanned(mob/M, rank)
|
||||
if (jobban_keylist.Find(text("[M.ckey] - [rank]")))
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
/proc/jobban_loadbanfile()
|
||||
var/savefile/S=new("data/job_full.ban")
|
||||
S["keys[0]"] >> jobban_keylist
|
||||
log_admin("Loading jobban_rank")
|
||||
S["runonce"] >> jobban_runonce
|
||||
if (!length(jobban_keylist))
|
||||
jobban_keylist=list()
|
||||
log_admin("jobban_keylist was empty")
|
||||
|
||||
/proc/jobban_savebanfile()
|
||||
var/savefile/S=new("data/job_full.ban")
|
||||
S["keys[0]"] << jobban_keylist
|
||||
|
||||
/proc/jobban_unban(mob/M, rank)
|
||||
jobban_keylist.Remove(text("[M.ckey] - [rank]"))
|
||||
jobban_savebanfile()
|
||||
|
||||
/proc/jobban_updatelegacybans()
|
||||
if(!jobban_runonce)
|
||||
log_admin("Updating jobbanfile!")
|
||||
// Updates bans.. Or fixes them. Either way.
|
||||
for(var/T in jobban_keylist)
|
||||
if(!T) continue
|
||||
jobban_runonce++ //don't run this update again
|
||||
|
||||
/proc/jobban_remove(X)
|
||||
if(jobban_keylist.Find(X))
|
||||
jobban_keylist.Remove(X)
|
||||
jobban_savebanfile()
|
||||
return 1
|
||||
return 0
|
||||
@@ -0,0 +1,9 @@
|
||||
/var/create_mob_html = null
|
||||
/obj/admins/proc/create_mob(var/mob/user)
|
||||
if (!create_mob_html)
|
||||
var/mobjs = null
|
||||
mobjs = dd_list2text(typesof(/mob), ";")
|
||||
create_mob_html = file2text('create_object.html')
|
||||
create_mob_html = dd_replacetext(create_mob_html, "null /* object types */", "\"[mobjs]\"")
|
||||
|
||||
user << browse(dd_replacetext(create_mob_html, "/* ref src */", "\ref[src]"), "window=create_mob;size=425x475")
|
||||
@@ -0,0 +1,9 @@
|
||||
/var/create_object_html = null
|
||||
/obj/admins/proc/create_object(var/mob/user)
|
||||
if (!create_object_html)
|
||||
var/objectjs = null
|
||||
objectjs = dd_list2text(typesof(/obj), ";")
|
||||
create_object_html = file2text('create_object.html')
|
||||
create_object_html = dd_replacetext(create_object_html, "null /* object types */", "\"[objectjs]\"")
|
||||
|
||||
user << browse(dd_replacetext(create_object_html, "/* ref src */", "\ref[src]"), "window=create_object;size=425x475")
|
||||
@@ -0,0 +1,9 @@
|
||||
/var/create_turf_html = null
|
||||
/obj/admins/proc/create_turf(var/mob/user)
|
||||
if (!create_turf_html)
|
||||
var/turfjs = null
|
||||
turfjs = dd_list2text(typesof(/turf), ";")
|
||||
create_turf_html = file2text('create_object.html')
|
||||
create_turf_html = dd_replacetext(create_turf_html, "null /* object types */", "\"[turfjs]\"")
|
||||
|
||||
user << browse(dd_replacetext(create_turf_html, "/* ref src */", "\ref[src]"), "window=create_turf;size=425x475")
|
||||
@@ -0,0 +1,21 @@
|
||||
/mob/verb/adminhelp(msg as text)
|
||||
set category = "Commands"
|
||||
set name = "adminhelp"
|
||||
if(!usr.client.authenticated)
|
||||
src << "Please authorize before sending these messages."
|
||||
return
|
||||
|
||||
msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
|
||||
|
||||
if (!msg)
|
||||
return
|
||||
|
||||
if (usr.muted)
|
||||
return
|
||||
|
||||
for (var/mob/M in world)
|
||||
if (M.client && M.client.holder)
|
||||
M << "\blue <b><font color=red>HELP: </font>[key_name(src, M)](<A HREF='?src=\ref[M.client.holder];adminplayeropts=\ref[src]'>X</A>):</b> [msg]"
|
||||
|
||||
usr << "Your message has been broadcast to administrators."
|
||||
log_admin("HELP: [key_name(src)]: [msg]")
|
||||
@@ -0,0 +1,91 @@
|
||||
/client/proc/Jump(var/area/A in world)
|
||||
set desc = "Area to jump to"
|
||||
set category = "Special Verbs"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
if(config.allow_admin_jump)
|
||||
usr.loc = pick(get_area_turfs(A))
|
||||
|
||||
log_admin("[key_name(usr)] jumped to [A]")
|
||||
message_admins("[key_name_admin(usr)] jumped to [A]", 1)
|
||||
else
|
||||
alert("Admin jumping disabled")
|
||||
|
||||
/client/proc/jumptoturf(var/turf/T in world)
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if(config.allow_admin_jump)
|
||||
log_admin("[key_name(usr)] jumped to [T.x],[T.y],[T.z] in [T.loc]")
|
||||
message_admins("[key_name_admin(usr)] jumped to [T.x],[T.y],[T.z] in [T.loc]", 1)
|
||||
usr.loc = T
|
||||
else
|
||||
alert("Admin jumping disabled")
|
||||
return
|
||||
|
||||
/client/proc/jumptomob(var/mob/M in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Jump to Mob"
|
||||
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
if(config.allow_admin_jump)
|
||||
log_admin("[key_name(usr)] jumped to [key_name(M)]")
|
||||
message_admins("[key_name_admin(usr)] jumped to [key_name_admin(M)]", 1)
|
||||
usr.loc = get_turf(M)
|
||||
else
|
||||
alert("Admin jumping disabled")
|
||||
|
||||
/client/proc/jumptokey()
|
||||
set category = "Special Verbs"
|
||||
set name = "Jump to Key"
|
||||
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
if(config.allow_admin_jump)
|
||||
var/list/keys = list()
|
||||
for(var/mob/M in world)
|
||||
keys += M.client
|
||||
var/selection = input("Please, select a player!", "Admin Jumping", null, null) as null|anything in keys
|
||||
if(!selection)
|
||||
return
|
||||
var/mob/M = selection:mob
|
||||
log_admin("[key_name(usr)] jumped to [key_name(M)]")
|
||||
message_admins("[key_name_admin(usr)] jumped to [key_name_admin(M)]", 1)
|
||||
usr.loc = M.loc
|
||||
else
|
||||
alert("Admin jumping disabled")
|
||||
|
||||
/client/proc/Getmob(var/mob/M in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Get Mob"
|
||||
set desc = "Mob to teleport"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if(config.allow_admin_jump)
|
||||
log_admin("[key_name(usr)] teleported [key_name(M)]")
|
||||
message_admins("[key_name_admin(usr)] teleported [key_name_admin(M)]", 1)
|
||||
M.loc = get_turf(usr)
|
||||
else
|
||||
alert("Admin jumping disabled")
|
||||
|
||||
/client/proc/sendmob(var/mob/M in world, var/area/A in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Send Mob"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if(config.allow_admin_jump)
|
||||
M.loc = pick(get_area_turfs(A))
|
||||
|
||||
log_admin("[key_name(usr)] teleported [key_name(M)] to [A]")
|
||||
message_admins("[key_name_admin(usr)] teleported [key_name_admin(M)] to [A]", 1)
|
||||
else
|
||||
alert("Admin jumping disabled")
|
||||
@@ -0,0 +1,28 @@
|
||||
/client/proc/cmd_admin_say(msg as text)
|
||||
set category = "Special Verbs"
|
||||
set name = "asay"
|
||||
set hidden = 1
|
||||
|
||||
// All admins should be authenticated, but... what if?
|
||||
|
||||
if (!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
if (!src.mob || src.mob.muted)
|
||||
return
|
||||
|
||||
msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
|
||||
log_admin("[key_name(src)] : [msg]")
|
||||
|
||||
|
||||
if (!msg)
|
||||
return
|
||||
|
||||
for (var/mob/M in world)
|
||||
if (M.client && M.client.holder)
|
||||
if (src.holder.rank == "Goat Fart")
|
||||
M << "<span class=\"gfartadmin\"><span class=\"prefix\">ADMIN:</span> <span class=\"name\">[key_name(usr, M)]:</span> <span class=\"message\">[msg]</span></span>"
|
||||
else
|
||||
M << "<span class=\"admin\"><span class=\"prefix\">ADMIN:</span> <span class=\"name\">[key_name(usr, M)]:</span> <span class=\"message\">[msg]</span></span>"
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
//debug proc for testing body temperature
|
||||
/client/proc/modifytemperature(newtemp as num)
|
||||
set category = "Debug"
|
||||
set name = "mass edit temperature"
|
||||
set desc="edit temperature of all turfs in view"
|
||||
/*
|
||||
if(Debug2)
|
||||
for(var/turf/T in view())
|
||||
if(!T.updatecell) continue
|
||||
T.temp = newtemp
|
||||
log_admin("[key_name(src)] set [T]'s temp to [newtemp]")
|
||||
return
|
||||
else
|
||||
alert("Debugging is off")
|
||||
return
|
||||
*/
|
||||
@@ -0,0 +1,24 @@
|
||||
/client/proc/dsay(msg as text)
|
||||
set category = "Special Verbs"
|
||||
set name = "dsay"
|
||||
set hidden = 1
|
||||
// All admins should be authenticated, but... what if?
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if(!src.mob)
|
||||
return
|
||||
if(src.mob.muted)
|
||||
return
|
||||
|
||||
msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
|
||||
log_admin("[key_name(src)] : [msg]")
|
||||
|
||||
if (!msg)
|
||||
return
|
||||
|
||||
var/rendered = "<span class='game deadsay'><span class='prefix'>DEAD:</span> <span class='name'>ADMIN([src.stealth ? pick("BADMIN", "ViktoriaSA", "Drunkwaffel", "Android Datuhh") : src.key])</span> says, <span class='message'>\"[msg]\"</span></span>"
|
||||
|
||||
for (var/mob/M in world)
|
||||
if(M.stat == 2 || (M.client && M.client.holder))
|
||||
M.show_message(rendered, 2)
|
||||
@@ -0,0 +1,194 @@
|
||||
/client/proc/Debug2()
|
||||
set category = "Debug"
|
||||
set name = "Debug-Game"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if(src.holder.rank == "Coder")
|
||||
Debug2 = !Debug2
|
||||
|
||||
world << "Debugging [Debug2 ? "On" : "Off"]"
|
||||
log_admin("[key_name(src)] toggled debugging to [Debug2]")
|
||||
else if(src.holder.rank == "Host")
|
||||
Debug2 = !Debug2
|
||||
|
||||
world << "Debugging [Debug2 ? "On" : "Off"]"
|
||||
log_admin("[key_name(src)] toggled debugging to [Debug2]")
|
||||
else
|
||||
alert("Coders only baby")
|
||||
return
|
||||
|
||||
/client/proc/callproc()
|
||||
set category = "Debug"
|
||||
set name = "Advanced ProcCall"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
var/target = null
|
||||
var/arguments = null
|
||||
var/returnval = null
|
||||
//var/class = null
|
||||
|
||||
switch(alert("Proc owned by obj?",,"Yes","No"))
|
||||
if("Yes")
|
||||
target = input("Enter target:","Target",null) as obj|mob|area|turf in world
|
||||
if("No")
|
||||
target = null
|
||||
|
||||
var/procname = input("Procpath","path:", null)
|
||||
|
||||
if (target)
|
||||
arguments = input("Arguments","Arguments:", null)
|
||||
usr << "\blue Calling '[procname]' with arguments '[arguments]' on '[target]'"
|
||||
returnval = call(target,procname)(arguments)
|
||||
else
|
||||
arguments = input("Arguments","Arguments:", null)
|
||||
usr << "\blue Calling '[procname]' with arguments '[arguments]'"
|
||||
returnval = call(procname)(arguments)
|
||||
|
||||
usr << "\blue Proc returned: [returnval ? returnval : "null"]"
|
||||
/*
|
||||
var/argnum = input("Number of arguments:","Number",null) as num
|
||||
|
||||
|
||||
var/i
|
||||
for(i=0, i<argnum, i++)
|
||||
|
||||
class = input("Type of Argument #[i]","Variable Type", default) in list("text","num","type","reference","mob reference", "icon","file","cancel")
|
||||
switch(class)
|
||||
if("cancel")
|
||||
return
|
||||
|
||||
if("text")
|
||||
var/"argu"+i = input("Enter new text:","Text",null) as text
|
||||
|
||||
if("num")
|
||||
O.vars[variable] = input("Enter new number:","Num",\
|
||||
O.vars[variable]) as num
|
||||
|
||||
if("type")
|
||||
O.vars[variable] = input("Enter type:","Type",O.vars[variable]) \
|
||||
in typesof(/obj,/mob,/area,/turf)
|
||||
|
||||
if("reference")
|
||||
O.vars[variable] = input("Select reference:","Reference",\
|
||||
O.vars[variable]) as mob|obj|turf|area in world
|
||||
|
||||
if("mob reference")
|
||||
O.vars[variable] = input("Select reference:","Reference",\
|
||||
O.vars[variable]) as mob in world
|
||||
|
||||
if("file")
|
||||
O.vars[variable] = input("Pick file:","File",O.vars[variable]) \
|
||||
as file
|
||||
|
||||
if("icon")
|
||||
O.vars[variable] = input("Pick icon:","Icon",O.vars[variable]) \
|
||||
as icon
|
||||
spawn(0)
|
||||
call(T,wproc)(warg)
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/client/proc/Cell()
|
||||
set category = "Debug"
|
||||
if(!src.mob)
|
||||
return
|
||||
var/turf/T = src.mob.loc
|
||||
|
||||
if (!( istype(T, /turf) ))
|
||||
return
|
||||
|
||||
var/datum/gas_mixture/env = T.return_air()
|
||||
|
||||
var/t = ""
|
||||
t+= "Nitrogen : [env.nitrogen]\n"
|
||||
t+= "Oxygen : [env.oxygen]\n"
|
||||
t+= "Plasma : [env.toxins]\n"
|
||||
t+= "CO2: [env.carbon_dioxide]\n"
|
||||
|
||||
usr.show_message(t, 1)
|
||||
|
||||
/client/proc/cmd_admin_robotize(var/mob/M in world)
|
||||
set category = "Debug"
|
||||
set name = "Robotize"
|
||||
|
||||
if(!ticker)
|
||||
alert("Wait until the game starts")
|
||||
return
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
log_admin("[key_name(src)] has robotized [M.key].")
|
||||
spawn(10)
|
||||
M:Robotize()
|
||||
|
||||
else
|
||||
alert("Invalid mob")
|
||||
|
||||
|
||||
/client/proc/cmd_admin_alienize(var/mob/M in world)
|
||||
set category = "Debug"
|
||||
set name = "Alienize"
|
||||
|
||||
if(!ticker)
|
||||
alert("Wait until the game starts")
|
||||
return
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
log_admin("[key_name(src)] is attempting to alienize [M.key].")
|
||||
spawn(10)
|
||||
M:Alienize()
|
||||
else
|
||||
alert("Invalid mob")
|
||||
|
||||
/client/proc/cmd_admin_changelinginize(var/mob/M in world)
|
||||
set category = "Debug"
|
||||
set name = "Make Changeling"
|
||||
|
||||
if(!ticker)
|
||||
alert("Wait until the game starts")
|
||||
return
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
log_admin("[key_name(src)] has made [M.key] a changeling.")
|
||||
spawn(10)
|
||||
M.absorbed_dna[M.real_name] = M.dna
|
||||
M.make_changeling()
|
||||
else
|
||||
alert("Invalid mob")
|
||||
|
||||
/client/proc/cmd_admin_abominize(var/mob/M in world)
|
||||
set category = "Debug"
|
||||
set name = "Make Abomination"
|
||||
|
||||
usr << "Ruby Mode disabled. Command aborted."
|
||||
return
|
||||
if(!ticker)
|
||||
alert("Wait until the game starts.")
|
||||
return
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
log_admin("[key_name(src)] has made [M.key] an abomination.")
|
||||
/*
|
||||
spawn(10)
|
||||
M.make_abomination()
|
||||
*/
|
||||
|
||||
/client/proc/cmd_debug_del_all()
|
||||
set category = "Debug"
|
||||
set name = "Del-All"
|
||||
|
||||
// to prevent REALLY stupid deletions
|
||||
var/blocked = list(/obj, /mob, /mob/living, /mob/living/carbon, /mob/living/carbon/human)
|
||||
var/hsbitem = input(usr, "Choose an object to delete.", "Delete:") as null|anything in typesof(/obj) + typesof(/mob) - blocked
|
||||
if(hsbitem)
|
||||
for(var/atom/O in world)
|
||||
if(istype(O, hsbitem))
|
||||
del(O)
|
||||
log_admin("[key_name(src)] has deleted all instances of [hsbitem].")
|
||||
message_admins("[key_name_admin(src)] has deleted all instances of [hsbitem].", 0)
|
||||
|
||||
/client/proc/cmd_debug_tog_aliens()
|
||||
set category = "Debug"
|
||||
set name = "Toggle Aliens"
|
||||
|
||||
aliens_allowed = !aliens_allowed
|
||||
log_admin("[key_name(src)] has turned aliens [aliens_allowed ? "on" : "off"].")
|
||||
message_admins("[key_name_admin(src)] has turned aliens [aliens_allowed ? "on" : "off"].", 0)
|
||||
@@ -0,0 +1,109 @@
|
||||
/client/proc
|
||||
general_report()
|
||||
set category = "Diagnostics"
|
||||
|
||||
if(!master_controller)
|
||||
usr << alert("Master_controller not found.")
|
||||
|
||||
var/mobs = 0
|
||||
for(var/mob/M in world)
|
||||
mobs++
|
||||
|
||||
var/output = {"<B>GENERAL SYSTEMS REPORT</B><HR>
|
||||
<B>General Processing Data</B><BR>
|
||||
<B># of Machines:</B> [machines.len]<BR>
|
||||
<B># of Pipe Networks:</B> [pipe_networks.len]<BR>
|
||||
<B># of Processing Items:</B> [processing_items.len]<BR>
|
||||
<B># of Power Nets:</B> [powernets.len]<BR>
|
||||
<B># of Mobs:</B> [mobs]<BR>
|
||||
"}
|
||||
|
||||
usr << browse(output,"window=generalreport")
|
||||
|
||||
air_report()
|
||||
set category = "Diagnostics"
|
||||
|
||||
if(!master_controller || !air_master)
|
||||
alert(usr,"Master_controller or air_master not found.","Air Report")
|
||||
return 0
|
||||
|
||||
var/active_groups = 0
|
||||
var/inactive_groups = 0
|
||||
var/active_tiles = 0
|
||||
for(var/datum/air_group/group in air_master.air_groups)
|
||||
if(group.group_processing)
|
||||
active_groups++
|
||||
else
|
||||
inactive_groups++
|
||||
active_tiles += group.members.len
|
||||
|
||||
var/hotspots = 0
|
||||
for(var/obj/hotspot/hotspot in world)
|
||||
hotspots++
|
||||
|
||||
var/output = {"<B>AIR SYSTEMS REPORT</B><HR>
|
||||
<B>General Processing Data</B><BR>
|
||||
<B># of Groups:</B> [air_master.air_groups.len]<BR>
|
||||
---- <I>Active:</I> [active_groups]<BR>
|
||||
---- <I>Inactive:</I> [inactive_groups]<BR>
|
||||
-------- <I>Tiles:</I> [active_tiles]<BR>
|
||||
<B># of Active Singletons:</B> [air_master.active_singletons.len]<BR>
|
||||
<BR>
|
||||
<B>Special Processing Data</B><BR>
|
||||
<B>Hotspot Processing:</B> [hotspots]<BR>
|
||||
<B>High Temperature Processing:</B> [air_master.active_super_conductivity.len]<BR>
|
||||
<B>High Pressure Processing:</B> [air_master.high_pressure_delta.len] (not yet implemented)<BR>
|
||||
<BR>
|
||||
<B>Geometry Processing Data</B><BR>
|
||||
<B>Group Rebuild:</B> [air_master.groups_to_rebuild.len]<BR>
|
||||
<B>Tile Update:</B> [air_master.tiles_to_update.len]<BR>
|
||||
"}
|
||||
|
||||
usr << browse(output,"window=airreport")
|
||||
|
||||
air_status(turf/target as turf)
|
||||
set category = "Diagnostics"
|
||||
|
||||
if(!isturf(target))
|
||||
return
|
||||
|
||||
var/datum/gas_mixture/GM = target.return_air()
|
||||
var/burning = 0
|
||||
if(istype(target, /turf/simulated))
|
||||
var/turf/simulated/T = target
|
||||
if(T.active_hotspot)
|
||||
burning = 1
|
||||
|
||||
usr << "\blue @[target.x],[target.y] ([GM.group_multiplier]): O:[GM.oxygen] T:[GM.toxins] N:[GM.nitrogen] C:[GM.carbon_dioxide] w [GM.temperature] Kelvin, [GM.return_pressure()] kPa [(burning)?("\red BURNING"):(null)]"
|
||||
for(var/datum/gas/trace_gas in GM.trace_gases)
|
||||
usr << "[trace_gas.type]: [trace_gas.moles]"
|
||||
|
||||
fix_next_move()
|
||||
set category = "Diagnostics"
|
||||
set name = "Press this if everybody freezes up"
|
||||
var/largest_move_time = 0
|
||||
var/largest_click_time = 0
|
||||
var/mob/largest_move_mob = null
|
||||
var/mob/largest_click_mob = null
|
||||
for(var/mob/M in world)
|
||||
if(!M.client)
|
||||
continue
|
||||
if(M.next_move >= largest_move_time)
|
||||
largest_move_mob = M
|
||||
if(M.next_move > world.time)
|
||||
largest_move_time = M.next_move - world.time
|
||||
else
|
||||
largest_move_time = 1
|
||||
if(M.lastDblClick >= largest_click_time)
|
||||
largest_click_mob = M
|
||||
if(M.lastDblClick > world.time)
|
||||
largest_click_time = M.lastDblClick - world.time
|
||||
else
|
||||
largest_click_time = 0
|
||||
log_admin("DEBUG: [key_name(M)] next_move = [M.next_move] lastDblClick = [M.lastDblClick] world.time = [world.time]")
|
||||
M.next_move = 1
|
||||
M.lastDblClick = 0
|
||||
message_admins("[key_name_admin(largest_move_mob)] had the largest move delay with [largest_move_time] frames / [largest_move_time/10] seconds!", 1)
|
||||
message_admins("[key_name_admin(largest_click_mob)] had the largest click delay with [largest_click_time] frames / [largest_click_time/10] seconds!", 1)
|
||||
message_admins("world.time = [world.time]", 1)
|
||||
return
|
||||
@@ -0,0 +1,23 @@
|
||||
// Made during the internet outage caused by hurricane ike
|
||||
// fuck you ike
|
||||
// love persh
|
||||
///client/proc/grillify()
|
||||
// set category = "Debug"
|
||||
// set name = "spawn grilles"
|
||||
// set desc="it spawns grilles okay fuck if I know"
|
||||
// if(Debug2)
|
||||
// // All admins should be authenticated, but... what if?
|
||||
// if(!src.authenticated || !src.holder)
|
||||
// src << "Only administrators may use this command."
|
||||
// return
|
||||
//
|
||||
// log_admin("[src.key] used the grillify verb")
|
||||
// world << "\blue<big><B>[src.key] used the grillify verb/bitches better get yellow gloves verb!</big></B>"
|
||||
//
|
||||
// for(var/turf/T in world)
|
||||
// if(!T.density)
|
||||
// spawn(-1)
|
||||
// new /obj/grille(locate(T.x,T.y,T.z))
|
||||
// else
|
||||
// alert("Debugging is disabled")
|
||||
// return
|
||||
@@ -0,0 +1,371 @@
|
||||
/client/proc/cmd_modify_object_variables(obj/O as obj|mob|turf|area in world)
|
||||
set category = "Debug"
|
||||
set name = "Edit Variables"
|
||||
set desc="(target) Edit a target item's variables"
|
||||
src.modify_variables(O)
|
||||
|
||||
/client/proc/cmd_modify_ticker_variables()
|
||||
set category = "Debug"
|
||||
set name = "Edit Ticker Variables"
|
||||
|
||||
if (ticker == null)
|
||||
src << "Game hasn't started yet."
|
||||
else
|
||||
src.modify_variables(ticker)
|
||||
|
||||
/client/proc/mod_list_add_ass() //haha
|
||||
|
||||
var/class = input("What kind of variable?","Variable Type") as null|anything in list("text",
|
||||
"num","type","reference","mob reference", "icon","file")
|
||||
|
||||
if(!class)
|
||||
return
|
||||
|
||||
var/var_value = null
|
||||
|
||||
switch(class)
|
||||
|
||||
if("text")
|
||||
var_value = input("Enter new text:","Text") as text
|
||||
|
||||
if("num")
|
||||
var_value = input("Enter new number:","Num") as num
|
||||
|
||||
if("type")
|
||||
var_value = input("Enter type:","Type") in typesof(/obj,/mob,/area,/turf)
|
||||
|
||||
if("reference")
|
||||
var_value = input("Select reference:","Reference") as mob|obj|turf|area in world
|
||||
|
||||
if("mob reference")
|
||||
var_value = input("Select reference:","Reference") as mob in world
|
||||
|
||||
if("file")
|
||||
var_value = input("Pick file:","File") as file
|
||||
|
||||
if("icon")
|
||||
var_value = input("Pick icon:","Icon") as icon
|
||||
|
||||
if(!var_value) return
|
||||
|
||||
return var_value
|
||||
|
||||
|
||||
/client/proc/mod_list_add(var/list/L)
|
||||
|
||||
var/class = input("What kind of variable?","Variable Type") as null|anything in list("text",
|
||||
"num","type","reference","mob reference", "icon","file")
|
||||
|
||||
if(!class)
|
||||
return
|
||||
|
||||
var/var_value = null
|
||||
|
||||
switch(class)
|
||||
|
||||
if("text")
|
||||
var_value = input("Enter new text:","Text") as text
|
||||
|
||||
if("num")
|
||||
var_value = input("Enter new number:","Num") as num
|
||||
|
||||
if("type")
|
||||
var_value = input("Enter type:","Type") in typesof(/obj,/mob,/area,/turf)
|
||||
|
||||
if("reference")
|
||||
var_value = input("Select reference:","Reference") as mob|obj|turf|area in world
|
||||
|
||||
if("mob reference")
|
||||
var_value = input("Select reference:","Reference") as mob in world
|
||||
|
||||
if("file")
|
||||
var_value = input("Pick file:","File") as file
|
||||
|
||||
if("icon")
|
||||
var_value = input("Pick icon:","Icon") as icon
|
||||
|
||||
if(!var_value) return
|
||||
|
||||
switch(alert("Would you like to associate a var with the list entry?",,"Yes","No"))
|
||||
if("Yes")
|
||||
L += var_value
|
||||
L[var_value] = mod_list_add_ass() //haha
|
||||
if("No")
|
||||
L += var_value
|
||||
|
||||
|
||||
/client/proc/mod_list(var/list/L)
|
||||
if(!istype(L,/list)) src << "Not a List."
|
||||
|
||||
var/list/locked = list("vars", "key", "ckey", "client", "firemut", "ishulk", "telekinesis", "xray", "virus", "cuffed", "ka", "last_eaten", "urine", "poo", "icon", "icon_state")
|
||||
|
||||
var/list/names = sortList(L)
|
||||
|
||||
var/variable = input("Which var?","Var") as null|anything in names + "(ADD VAR)"
|
||||
|
||||
if(variable == "(ADD VAR)")
|
||||
mod_list_add(L)
|
||||
return
|
||||
|
||||
if(!variable)
|
||||
return
|
||||
|
||||
var/default
|
||||
|
||||
var/dir
|
||||
|
||||
if (locked.Find(variable) && !(src.holder.rank in list("Host", "Coder")))
|
||||
return
|
||||
|
||||
if(isnull(variable))
|
||||
usr << "Unable to determine variable type."
|
||||
|
||||
else if(isnum(variable))
|
||||
usr << "Variable appears to be <b>NUM</b>."
|
||||
default = "num"
|
||||
dir = 1
|
||||
|
||||
else if(istext(variable))
|
||||
usr << "Variable appears to be <b>TEXT</b>."
|
||||
default = "text"
|
||||
|
||||
else if(isloc(variable))
|
||||
usr << "Variable appears to be <b>REFERENCE</b>."
|
||||
default = "reference"
|
||||
|
||||
else if(isicon(variable))
|
||||
usr << "Variable appears to be <b>ICON</b>."
|
||||
variable = "\icon[variable]"
|
||||
default = "icon"
|
||||
|
||||
else if(istype(variable,/atom) || istype(variable,/datum))
|
||||
usr << "Variable appears to be <b>TYPE</b>."
|
||||
default = "type"
|
||||
|
||||
else if(istype(variable,/list))
|
||||
usr << "Variable appears to be <b>LIST</b>."
|
||||
default = "list"
|
||||
|
||||
else if(istype(variable,/client))
|
||||
usr << "Variable appears to be <b>CLIENT</b>."
|
||||
default = "cancel"
|
||||
|
||||
else
|
||||
usr << "Variable appears to be <b>FILE</b>."
|
||||
default = "file"
|
||||
|
||||
usr << "Variable contains: [variable]"
|
||||
if(dir)
|
||||
switch(variable)
|
||||
if(1)
|
||||
dir = "NORTH"
|
||||
if(2)
|
||||
dir = "SOUTH"
|
||||
if(4)
|
||||
dir = "EAST"
|
||||
if(8)
|
||||
dir = "WEST"
|
||||
if(5)
|
||||
dir = "NORTHEAST"
|
||||
if(6)
|
||||
dir = "SOUTHEAST"
|
||||
if(9)
|
||||
dir = "NORTHWEST"
|
||||
if(10)
|
||||
dir = "SOUTHWEST"
|
||||
else
|
||||
dir = null
|
||||
|
||||
if(dir)
|
||||
usr << "If a direction, direction is: [dir]"
|
||||
|
||||
var/class = input("What kind of variable?","Variable Type",default) as null|anything in list("text",
|
||||
"num","type","reference","mob reference", "icon","file","list","edit referenced object", "(DELETE FROM LIST)","restore to default")
|
||||
|
||||
if(!class)
|
||||
return
|
||||
|
||||
switch(class)
|
||||
|
||||
if("list")
|
||||
mod_list(variable)
|
||||
|
||||
if("restore to default")
|
||||
variable = initial(variable)
|
||||
|
||||
if("edit referenced object")
|
||||
modify_variables(variable)
|
||||
|
||||
if("(DELETE FROM LIST)")
|
||||
L -= variable
|
||||
return
|
||||
|
||||
if("text")
|
||||
variable = input("Enter new text:","Text",\
|
||||
variable) as text
|
||||
|
||||
if("num")
|
||||
variable = input("Enter new number:","Num",\
|
||||
variable) as num
|
||||
|
||||
if("type")
|
||||
variable = input("Enter type:","Type",variable) \
|
||||
in typesof(/obj,/mob,/area,/turf)
|
||||
|
||||
if("reference")
|
||||
variable = input("Select reference:","Reference",\
|
||||
variable) as mob|obj|turf|area in world
|
||||
|
||||
if("mob reference")
|
||||
variable = input("Select reference:","Reference",\
|
||||
variable) as mob in world
|
||||
|
||||
if("file")
|
||||
variable = input("Pick file:","File",variable) \
|
||||
as file
|
||||
|
||||
if("icon")
|
||||
variable = input("Pick icon:","Icon",variable) \
|
||||
as icon
|
||||
|
||||
|
||||
/client/proc/modify_variables(var/atom/O)
|
||||
var/list/locked = list("vars", "key", "ckey", "client", "firemut", "ishulk", "telekinesis", "xray", "virus", "cuffed", "ka", "last_eaten", "urine", "poo", "icon", "icon_state")
|
||||
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
var/list/names = list()
|
||||
for (var/V in O.vars)
|
||||
names += V
|
||||
|
||||
names = sortList(names)
|
||||
|
||||
var/variable = input("Which var?","Var") as null|anything in names
|
||||
if(!variable)
|
||||
return
|
||||
var/default
|
||||
var/var_value = O.vars[variable]
|
||||
var/dir
|
||||
|
||||
if (locked.Find(variable) && !(src.holder.rank in list("Host", "Coder")))
|
||||
return
|
||||
|
||||
if(isnull(var_value))
|
||||
usr << "Unable to determine variable type."
|
||||
|
||||
else if(isnum(var_value))
|
||||
usr << "Variable appears to be <b>NUM</b>."
|
||||
default = "num"
|
||||
dir = 1
|
||||
|
||||
else if(istext(var_value))
|
||||
usr << "Variable appears to be <b>TEXT</b>."
|
||||
default = "text"
|
||||
|
||||
else if(isloc(var_value))
|
||||
usr << "Variable appears to be <b>REFERENCE</b>."
|
||||
default = "reference"
|
||||
|
||||
else if(isicon(var_value))
|
||||
usr << "Variable appears to be <b>ICON</b>."
|
||||
var_value = "\icon[var_value]"
|
||||
default = "icon"
|
||||
|
||||
else if(istype(var_value,/atom) || istype(var_value,/datum))
|
||||
usr << "Variable appears to be <b>TYPE</b>."
|
||||
default = "type"
|
||||
|
||||
else if(istype(var_value,/list))
|
||||
usr << "Variable appears to be <b>LIST</b>."
|
||||
default = "list"
|
||||
|
||||
else if(istype(var_value,/client))
|
||||
usr << "Variable appears to be <b>CLIENT</b>."
|
||||
default = "cancel"
|
||||
|
||||
else
|
||||
usr << "Variable appears to be <b>FILE</b>."
|
||||
default = "file"
|
||||
|
||||
usr << "Variable contains: [var_value]"
|
||||
if(dir)
|
||||
switch(var_value)
|
||||
if(1)
|
||||
dir = "NORTH"
|
||||
if(2)
|
||||
dir = "SOUTH"
|
||||
if(4)
|
||||
dir = "EAST"
|
||||
if(8)
|
||||
dir = "WEST"
|
||||
if(5)
|
||||
dir = "NORTHEAST"
|
||||
if(6)
|
||||
dir = "SOUTHEAST"
|
||||
if(9)
|
||||
dir = "NORTHWEST"
|
||||
if(10)
|
||||
dir = "SOUTHWEST"
|
||||
else
|
||||
dir = null
|
||||
if(dir)
|
||||
usr << "If a direction, direction is: [dir]"
|
||||
|
||||
var/class = input("What kind of variable?","Variable Type",default) as null|anything in list("text",
|
||||
"num","type","reference","mob reference", "icon","file","list","edit referenced object","restore to default")
|
||||
|
||||
if(!class)
|
||||
return
|
||||
|
||||
var/original_name
|
||||
|
||||
if (!istype(O, /atom))
|
||||
original_name = "\ref[O] ([O])"
|
||||
else
|
||||
original_name = O:name
|
||||
|
||||
switch(class)
|
||||
|
||||
if("list")
|
||||
mod_list(O.vars[variable])
|
||||
return
|
||||
|
||||
if("restore to default")
|
||||
O.vars[variable] = initial(O.vars[variable])
|
||||
|
||||
if("edit referenced object")
|
||||
return .(O.vars[variable])
|
||||
|
||||
if("text")
|
||||
O.vars[variable] = input("Enter new text:","Text",\
|
||||
O.vars[variable]) as text
|
||||
|
||||
if("num")
|
||||
O.vars[variable] = input("Enter new number:","Num",\
|
||||
O.vars[variable]) as num
|
||||
|
||||
if("type")
|
||||
O.vars[variable] = input("Enter type:","Type",O.vars[variable]) \
|
||||
in typesof(/obj,/mob,/area,/turf)
|
||||
|
||||
if("reference")
|
||||
O.vars[variable] = input("Select reference:","Reference",\
|
||||
O.vars[variable]) as mob|obj|turf|area in world
|
||||
|
||||
if("mob reference")
|
||||
O.vars[variable] = input("Select reference:","Reference",\
|
||||
O.vars[variable]) as mob in world
|
||||
|
||||
if("file")
|
||||
O.vars[variable] = input("Pick file:","File",O.vars[variable]) \
|
||||
as file
|
||||
|
||||
if("icon")
|
||||
O.vars[variable] = input("Pick icon:","Icon",O.vars[variable]) \
|
||||
as icon
|
||||
|
||||
log_admin("[key_name(src)] modified [original_name]'s [variable] to [O.vars[variable]]")
|
||||
message_admins("[key_name_admin(src)] modified [original_name]'s [variable] to [O.vars[variable]]", 1)
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
/client/proc/play_sound(S as sound)
|
||||
set category = "Special Verbs"
|
||||
set name = "play sound"
|
||||
|
||||
//if(Debug2)
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
var/sound/uploaded_sound = sound(S,0,1,0)
|
||||
uploaded_sound.priority = 255
|
||||
uploaded_sound.wait = 1
|
||||
|
||||
if(src.holder.rank == "Host" || src.holder.rank == "Coder" || src.holder.rank == "Shit Guy")
|
||||
log_admin("[key_name(src)] played sound [S]")
|
||||
message_admins("[key_name_admin(src)] played sound [S]", 1)
|
||||
world << uploaded_sound
|
||||
else
|
||||
if(usr.client.canplaysound)
|
||||
usr.client.canplaysound = 0
|
||||
log_admin("[key_name(src)] played sound [S]")
|
||||
message_admins("[key_name_admin(src)] played sound [S]", 1)
|
||||
world << uploaded_sound
|
||||
else
|
||||
usr << "You already used up your jukebox monies this round!"
|
||||
del(uploaded_sound)
|
||||
// else
|
||||
// usr << "Cant play Sound."
|
||||
|
||||
|
||||
//else
|
||||
// alert("Debugging is disabled")
|
||||
// return
|
||||
@@ -0,0 +1,21 @@
|
||||
/mob/verb/pray(msg as text)
|
||||
set category = "Commands"
|
||||
set name = "Pray"
|
||||
if(!usr.client.authenticated)
|
||||
src << "Please authorize before sending these messages."
|
||||
return
|
||||
|
||||
msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
|
||||
|
||||
if (!msg)
|
||||
return
|
||||
|
||||
if (usr.muted)
|
||||
return
|
||||
|
||||
for (var/mob/M in world)
|
||||
if (M.client && M.client.holder)
|
||||
M << "\blue <b><font color=purple>PRAY: </font>[key_name(src, M)](<A HREF='?src=\ref[M.client.holder];adminplayeropts=\ref[src]'>X</A>):</b> [msg]"
|
||||
|
||||
usr << "Your prayers have been received by the gods."
|
||||
//log_admin("HELP: [key_name(src)]: [msg]")
|
||||
@@ -0,0 +1,471 @@
|
||||
/client/proc/cmd_admin_drop_everything(mob/M as mob in world)
|
||||
set category = null
|
||||
set name = "Drop Everything"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
for(var/obj/item/W in M)
|
||||
if (istype(W,/obj/item))
|
||||
M.u_equip(W)
|
||||
if (M.client)
|
||||
M.client.screen -= W
|
||||
if (W)
|
||||
W.loc = M.loc
|
||||
W.dropped(M)
|
||||
W.layer = initial(W.layer)
|
||||
|
||||
log_admin("[key_name(usr)] made [key_name(M)] drop everything!")
|
||||
message_admins("[key_name_admin(usr)] made [key_name_admin(M)] drop everything!", 1)
|
||||
|
||||
/client/proc/cmd_admin_prison(mob/M as mob in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Prison"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if (ismob(M))
|
||||
if(istype(M, /mob/living/silicon/ai))
|
||||
alert("The AI can't be sent to prison you jerk!", null, null, null, null, null)
|
||||
return
|
||||
//strip their stuff before they teleport into a cell :downs:
|
||||
for(var/obj/item/W in M)
|
||||
if (!istype(W,/datum/organ))
|
||||
M.u_equip(W)
|
||||
if (M.client)
|
||||
M.client.screen -= W
|
||||
if (W)
|
||||
W.loc = M.loc
|
||||
W.dropped(M)
|
||||
W.layer = initial(W.layer)
|
||||
//teleport person to cell
|
||||
M.paralysis += 5
|
||||
sleep(5) //so they black out before warping
|
||||
M.loc = pick(prisonwarp)
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/prisoner = M
|
||||
prisoner.equip_if_possible(new /obj/item/clothing/under/color/orange(prisoner), prisoner.slot_w_uniform)
|
||||
prisoner.equip_if_possible(new /obj/item/clothing/shoes/orange(prisoner), prisoner.slot_shoes)
|
||||
spawn(50)
|
||||
M << "\red You have been sent to the prison station!"
|
||||
log_admin("[key_name(usr)] sent [key_name(M)] to the prison station.")
|
||||
message_admins("\blue [key_name_admin(usr)] sent [key_name_admin(M)] to the prison station.", 1)
|
||||
|
||||
/client/proc/cmd_admin_subtle_message(mob/M as mob in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Subtle Message"
|
||||
|
||||
if (!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
var/msg = input("Message:", text("Subtle PM to [M.key]")) as text
|
||||
|
||||
if (!msg)
|
||||
return
|
||||
if (usr.client && usr.client.holder)
|
||||
M << "\bold You hear a voice in your head... \italic [msg]"
|
||||
|
||||
log_admin("SubtlePM: [key_name(usr)] -> [key_name(M)] : [msg]")
|
||||
message_admins("\blue \bold SubtleMessage: [key_name_admin(usr)] -> [key_name_admin(M)] : [msg]", 1)
|
||||
|
||||
/client/proc/cmd_admin_world_narrate() // Allows administrators to fluff events a little easier -- TLE
|
||||
set category = "Special Verbs"
|
||||
set name = "Global Narrate"
|
||||
|
||||
if (!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
var/msg = input("Message:", text("Enter the text you wish to appear to everyone:")) as text
|
||||
|
||||
if (!msg)
|
||||
return
|
||||
world << "[msg]"
|
||||
log_admin("GlobalNarrate: [key_name(usr)] : [msg]")
|
||||
message_admins("\blue \bold GlobalNarrate: [key_name_admin(usr)] : [msg]<BR>", 1)
|
||||
|
||||
/client/proc/cmd_admin_direct_narrate(mob/M as mob in world) // Targetted narrate -- TLE
|
||||
set category = "Special Verbs"
|
||||
set name = "Direct Narrate"
|
||||
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
var/msg = input("Message:", text("Enter the text you wish to appear to your target:")) as text
|
||||
M << msg
|
||||
log_admin("DirectNarrate: [key_name(usr)] to ([M.name]/[M.key]): [msg]")
|
||||
message_admins("\blue \bold DirectNarrate: [key_name(usr)] to ([M.name]/[M.key]): [msg]<BR>", 1)
|
||||
|
||||
/client/proc/cmd_admin_pm(mob/M as mob in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Admin PM"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if(M)
|
||||
if(src.mob.muted)
|
||||
src << "You are muted have a nice day"
|
||||
return
|
||||
if (!( ismob(M) ))
|
||||
return
|
||||
var/t = input("Message:", text("Private message to [M.key]")) as text
|
||||
if(src.holder.rank != "Coder" && src.holder.rank != "Host")
|
||||
t = strip_html(t,500)
|
||||
if (!( t ))
|
||||
return
|
||||
if (usr.client && usr.client.holder)
|
||||
M << "\red Admin PM from-<b>[key_name(usr, M, 0)]</b>: [t]"
|
||||
usr << "\blue Admin PM to-<b>[key_name(M, usr, 1)]</b>: [t]"
|
||||
else
|
||||
if (M.client && M.client.holder)
|
||||
M << "\blue Reply PM from-<b>[key_name(usr, M, 1)]</b>: [t]"
|
||||
else
|
||||
M << "\red Reply PM from-<b>[key_name(usr, M, 0)]</b>: [t]"
|
||||
usr << "\blue Reply PM to-<b>[key_name(M, usr, 0)]</b>: [t]"
|
||||
|
||||
log_admin("PM: [key_name(usr)]->[key_name(M)] : [t]")
|
||||
|
||||
for(var/mob/K in world) //we don't use message_admins here because the sender/receiver might get it too
|
||||
if(K && K.client && K.client.holder && K.key != usr.key && K.key != M.key)
|
||||
K << "<B><font color='blue'>PM: [key_name(usr, K)]->[key_name(M, K)]:</B> \blue [t]</font>"
|
||||
|
||||
/client/proc/cmd_admin_godmode(mob/M as mob in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Toggle Godmode"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if (M.nodamage == 1)
|
||||
M.nodamage = 0
|
||||
usr << "\blue Toggled OFF"
|
||||
else
|
||||
M.nodamage = 1
|
||||
usr << "\blue Toggled ON"
|
||||
|
||||
log_admin("[key_name(usr)] has toggled [key_name(M)]'s nodamage to [(M.nodamage ? "On" : "Off")]")
|
||||
message_admins("[key_name_admin(usr)] has toggled [key_name_admin(M)]'s nodamage to [(M.nodamage ? "On" : "Off")]", 1)
|
||||
|
||||
/client/proc/cmd_admin_mute(mob/M as mob in world)
|
||||
set category = null
|
||||
set name = "Toggle Mute"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if (M.client && M.client.holder && (M.client.holder.level >= src.holder.level))
|
||||
alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null)
|
||||
return
|
||||
M.muted = !M.muted
|
||||
|
||||
log_admin("[key_name(src)] has [(M.muted ? "muted" : "voiced")] [key_name(M)].")
|
||||
message_admins("[key_name_admin(src)] has [(M.muted ? "muted" : "voiced")] [key_name_admin(M)].", 1)
|
||||
|
||||
M << "You have been [(M.muted ? "muted" : "voiced")]."
|
||||
|
||||
|
||||
/client/proc/cmd_admin_add_random_ai_law()
|
||||
set category = "Debug"
|
||||
set name = "Add Random AI Law"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
for(var/mob/living/silicon/ai/M in world)
|
||||
if(M.stat != 2 && M.see_in_dark != 0)
|
||||
var/who = pick("A WIZARD", "A SYNDICATE AGENT", "A CENTCOM OFFICER", "A SPACE PIRATE", "THE CAPTAIN", "A MONKEY", "A HORSE", "A BEE", "AYN RAND", "A CRAB")
|
||||
var/who2 = pick("WIZARDS", "SYNDICATE AGENTS", "CENTCOM OFFICERS", "SPACE PIRATES", "TRAITORS", "MONKEYS", "HORSES", "BEES", "EELS", "CRABS", "POLITICAL COMMENTATORS", "CELEBRITIES", "ATHLETES", "POLITICIANS", "RUGS", "FOREST FIRES", "MENTAL ILLNESSES")
|
||||
var/what2 = pick("TOOLBOXES", "AIRLOCKS", "CLOTHES", "WEAPONS", "MEDKITS", "BOMBS", "CANISTERS", "CHAIRS", "CAT VIAGRA PILLS", "BBQ GRILLS")
|
||||
var/what2pref = pick("SOFT", "WARM", "WET", "COLD", "ICY", "SEXY", "UGLY")
|
||||
var/who2pref = pick("IN NEED OF", "UNHAPPY WITHOUT", "HAPPY WITHOUT", "IN LOVE WITH", "DESPERATE FOR", "BUILT FOR", "AFRAID OF")
|
||||
var/whoverb = pick("ATTACKING", "BUILDING", "ADOPTING", "CARRYING", "KISSING", "EATING")
|
||||
var/amount = pick("TWO", "THREE", "FOUR", "FIVE", "SIX", "SEVEN", "EIGHT", "NINE", "ONE HUNDRED", "ONE THOUSAND")
|
||||
var/area = pick("THE BRIDGE", "THE ARRIVAL SHUTTLE", "CHEMICAL LAB", "GENETICS", "ATMOSPHERICS", "CENTCOM", "AMERICA", "IRELAND", "CANADA", "ROMANIA", "GERMANY", "CHINA", "MARS", "VENUS", "MERCURY", "JUPITER", "URANUS", "NEPTUNE", "PLUTO")
|
||||
var/area2 = pick("HAS", "WANTS", "NEEDS", "WORSHIPS")
|
||||
var/dowhat = pick("STOP THIS", "SUPPORT THIS", "CONSTANTLY INFORM THE CREW OF THIS")
|
||||
switch(pick(1,2,3,4,5,6,7,8,9,10,11,12))
|
||||
if(1)
|
||||
M << "\red THERE ARE [amount] [who2] ON THE STATION...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"THERE ARE [amount] [who2] ON THE STATION...LAWS UPDATED")
|
||||
if(2)
|
||||
M << "\red [what2] ARE DANGEROUS TO HUMANS...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"[what2] ARE DANGEROUS TO HUMANS")
|
||||
if(3)
|
||||
M << "\red THE ESCAPE-SHUTTLE CANNOT BE CALLED BECAUSE OF [who2] ON THE STATION...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"THE ESCAPE-SHUTTLE CANNOT BE CALLED BECAUSE OF [who2] ON THE STATION")
|
||||
if(4)
|
||||
M << "\red HUMANS NEED TO EAT [what2pref] [what2] TO SURVIVE...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"HUMANS NEED TO EAT [what2pref] [what2] TO SURVIVE")
|
||||
if(5)
|
||||
M << "\red THE CAPTAIN, HOP AND HOS ARE [who2]...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"THE CAPTAIN, HOP AND HOS ARE [who2]")
|
||||
if(6)
|
||||
M << "\red THE STATION IS [who2pref] [who2]...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"THE STATION IS [who2pref] [who2]")
|
||||
if(7)
|
||||
M << "\red YOU ARE [amount] [who2]...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"YOU ARE [amount] [who2]")
|
||||
if(8)
|
||||
M << "\red YOU ARE [who2pref] [who2]...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"YOU ARE [who2pref] [who2]")
|
||||
if(9)
|
||||
M << "\red [who] IS [whoverb] THE STATION...[dowhat]...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"[who] IS [whoverb] THE STATION...[dowhat]...")
|
||||
if(10)
|
||||
M << "\red YOU MUST ALWAYS LIE...LAWS UPDATED"
|
||||
M.add_supplied_law(10,"YOU MUST ALWAYS LIE")
|
||||
if(11)
|
||||
M << "\red [area] [area2] [amount] [what2]"
|
||||
M.add_supplied_law(10,"[area] [area2] [amount] [what2]")
|
||||
if(12)
|
||||
M << "\red [area] [area2] [who]"
|
||||
M.add_supplied_law(10,"[area] [area2] [amount] of [who]")
|
||||
|
||||
command_alert("Ion storm detected near the station. Please check all AI-controlled equipment for errors.", "Anomaly Alert")
|
||||
|
||||
/client/proc/cmd_admin_add_freeform_ai_law()
|
||||
set category = "Debug"
|
||||
set name = "Add AI law"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
var/input = input(usr, "Please enter anything you want the AI to do. Anything. Serious.", "What?", "")
|
||||
if(!input)
|
||||
return
|
||||
for(var/mob/living/silicon/ai/M in world)
|
||||
if (M.stat == 2)
|
||||
usr << "Upload failed. No signal is being detected from the AI."
|
||||
else if (M.see_in_dark == 0)
|
||||
usr << "Upload failed. Only a faint signal is being detected from the AI, and it is not responding to our requests. It may be low on power."
|
||||
else
|
||||
M.add_supplied_law(10,input)
|
||||
for(var/mob/living/silicon/O in world)
|
||||
O << "\blue New law uploaded by Centcom: " + input
|
||||
|
||||
log_admin("Admin [key_name(usr)] has added a new AI law - [input]")
|
||||
message_admins("Admin [key_name_admin(usr)] has added a new AI law - [input]", 1)
|
||||
|
||||
/client/proc/cmd_admin_rejuvenate(mob/M as mob in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Rejuvenate"
|
||||
// All admins should be authenticated, but... what if?
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
if(!src.mob)
|
||||
return
|
||||
if(istype(M, /mob/dead/observer))
|
||||
alert("Cannot revive a ghost")
|
||||
return
|
||||
if(config.allow_admin_rev)
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = M
|
||||
for(var/A in H.organs)
|
||||
var/datum/organ/external/affecting = null
|
||||
if(!H.organs[A]) continue
|
||||
affecting = H.organs[A]
|
||||
if(!istype(affecting, /datum/organ/external)) continue
|
||||
affecting.heal_damage(1000, 1000) //fixes getting hit after ingestion, killing you when game updates organ health
|
||||
H.UpdateDamageIcon()
|
||||
M.fireloss = 0
|
||||
M.toxloss = 0
|
||||
M.bruteloss = 0
|
||||
M.oxyloss = 0
|
||||
M.paralysis = 0
|
||||
M.stunned = 0
|
||||
M.weakened = 0
|
||||
M.radiation = 0
|
||||
M.health = 100
|
||||
M.updatehealth()
|
||||
M.buckled = initial(M.buckled)
|
||||
M.handcuffed = initial(M.handcuffed)
|
||||
if (M.stat > 1)
|
||||
M.stat=0
|
||||
..()
|
||||
|
||||
log_admin("[key_name(usr)] healed / revived [key_name(M)]")
|
||||
message_admins("\red Admin [key_name_admin(usr)] healed / revived [key_name_admin(M)]!", 1)
|
||||
else
|
||||
alert("Admin revive disabled")
|
||||
|
||||
/client/proc/cmd_admin_create_centcom_report()
|
||||
set category = "Special Verbs"
|
||||
set name = "Create Command Report"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
var/input = input(usr, "Please enter anything you want. Anything. Serious.", "What?", "")
|
||||
if(!input)
|
||||
return
|
||||
for (var/obj/machinery/computer/communications/C in machines)
|
||||
if(! (C.stat & (BROKEN|NOPOWER) ) )
|
||||
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper( C.loc )
|
||||
P.name = "paper- '[command_name()] Update.'"
|
||||
P.info = input
|
||||
C.messagetitle.Add("[command_name()] Update")
|
||||
C.messagetext.Add(P.info)
|
||||
|
||||
command_alert(input);
|
||||
|
||||
log_admin("[key_name(src)] has created a command report: [input]")
|
||||
message_admins("[key_name_admin(src)] has created a command report", 1)
|
||||
|
||||
/client/proc/cmd_admin_delete(atom/O as obj|mob|turf in world)
|
||||
set category = "Debug"
|
||||
set name = "Delete"
|
||||
|
||||
if (!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
if (alert(src, "Are you sure you want to delete:\n[O]\nat ([O.x], [O.y], [O.z])?", "Confirmation", "Yes", "No") == "Yes")
|
||||
log_admin("[key_name(usr)] deleted [O] at ([O.x],[O.y],[O.z])")
|
||||
message_admins("[key_name_admin(usr)] deleted [O] at ([O.x],[O.y],[O.z])", 1)
|
||||
del(O)
|
||||
|
||||
/client/proc/cmd_admin_list_occ()
|
||||
set category = "Debug"
|
||||
set name = "List OOC"
|
||||
|
||||
if (!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
for(var/t in occupations)
|
||||
src << "[t]<br>"
|
||||
|
||||
/client/proc/cmd_admin_gib(mob/M as mob in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Gib"
|
||||
|
||||
if (!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
|
||||
if(usr.key != M.key && M.client)
|
||||
log_admin("[key_name(usr)] has gibbed [key_name(M)]")
|
||||
message_admins("[key_name_admin(usr)] has gibbed [key_name_admin(M)]", 1)
|
||||
|
||||
if (istype(M, /mob/dead/observer))
|
||||
var/virus = M.virus
|
||||
gibs(M.loc, virus)
|
||||
return
|
||||
|
||||
M.gib()
|
||||
|
||||
/client/proc/cmd_admin_gib_self()
|
||||
set name = "gibself"
|
||||
set category = "Special Verbs"
|
||||
if (istype(src.mob, /mob/dead/observer)) // so they don't spam gibs everywhere
|
||||
return
|
||||
else
|
||||
src.mob.gib()
|
||||
/*
|
||||
/client/proc/cmd_manual_ban()
|
||||
set name = "Manual Ban"
|
||||
set category = "Special Verbs"
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
var/mob/M = null
|
||||
switch(alert("How would you like to ban someone today?", "Manual Ban", "Key List", "Enter Manually", "Cancel"))
|
||||
if("Key List")
|
||||
var/list/keys = list()
|
||||
for(var/mob/M in world)
|
||||
keys += M.client
|
||||
var/selection = input("Please, select a player!", "Admin Jumping", null, null) as null|anything in keys
|
||||
if(!selection)
|
||||
return
|
||||
M = selection:mob
|
||||
if ((M.client && M.client.holder && (M.client.holder.level >= src.holder.level)))
|
||||
alert("You cannot perform this action. You must be of a higher administrative rank!")
|
||||
return
|
||||
|
||||
switch(alert("Temporary Ban?",,"Yes","No"))
|
||||
if("Yes")
|
||||
var/mins = input(usr,"How long (in minutes)?","Ban time",1440) as num
|
||||
if(!mins)
|
||||
return
|
||||
if(mins >= 525600) mins = 525599
|
||||
var/reason = input(usr,"Reason?","reason","Griefer") as text
|
||||
if(!reason)
|
||||
return
|
||||
if(M)
|
||||
AddBan(M.ckey, M.computer_id, reason, usr.ckey, 1, mins)
|
||||
M.unlock_medal("Banned", 1)
|
||||
M << "\red<BIG><B>You have been banned by [usr.client.ckey].\nReason: [reason].</B></BIG>"
|
||||
M << "\red This is a temporary ban, it will be removed in [mins] minutes."
|
||||
M << "\red To try to resolve this matter head to http://ss13.donglabs.com/forum/"
|
||||
log_admin("[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis will be removed in [mins] minutes.")
|
||||
message_admins("\blue[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis will be removed in [mins] minutes.")
|
||||
world.Export("http://216.38.134.132/adminlog.php?type=ban&key=[usr.client.key]&key2=[M.key]&msg=[html_decode(reason)]&time=[mins]&server=[dd_replacetext(config.server_name, "#", "")]")
|
||||
del(M.client)
|
||||
del(M)
|
||||
else
|
||||
|
||||
if("No")
|
||||
var/reason = input(usr,"Reason?","reason","Griefer") as text
|
||||
if(!reason)
|
||||
return
|
||||
AddBan(M.ckey, M.computer_id, reason, usr.ckey, 0, 0)
|
||||
M.unlock_medal("Banned", 1)
|
||||
M << "\red<BIG><B>You have been banned by [usr.client.ckey].\nReason: [reason].</B></BIG>"
|
||||
M << "\red This is a permanent ban."
|
||||
M << "\red To try to resolve this matter head to http://ss13.donglabs.com/forum/"
|
||||
log_admin("[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis is a permanent ban.")
|
||||
message_admins("\blue[usr.client.ckey] has banned [M.ckey].\nReason: [reason]\nThis is a permanent ban.")
|
||||
world.Export("http://216.38.134.132/adminlog.php?type=ban&key=[usr.client.key]&key2=[M.key]&msg=[html_decode(reason)]&time=perma&server=[dd_replacetext(config.server_name, "#", "")]")
|
||||
del(M.client)
|
||||
del(M)
|
||||
*/
|
||||
|
||||
/client/proc/update_world()
|
||||
// If I see anyone granting powers to specific keys like the code that was here,
|
||||
// I will both remove their SVN access and permanently ban them from my servers.
|
||||
return
|
||||
|
||||
/client/proc/cmd_admin_check_contents(mob/M as mob in world)
|
||||
set category = "Special Verbs"
|
||||
set name = "Check Contents"
|
||||
|
||||
var/list/L = M.get_contents()
|
||||
for(var/t in L)
|
||||
usr << "[t]"
|
||||
|
||||
/client/proc/cmd_admin_remove_plasma()
|
||||
set category = "Debug"
|
||||
set name = "Stabilize Atmos."
|
||||
if(!src.authenticated || !src.holder)
|
||||
src << "Only administrators may use this command."
|
||||
return
|
||||
// DEFERRED
|
||||
/*
|
||||
spawn(0)
|
||||
for(var/turf/T in view())
|
||||
T.poison = 0
|
||||
T.oldpoison = 0
|
||||
T.tmppoison = 0
|
||||
T.oxygen = 755985
|
||||
T.oldoxy = 755985
|
||||
T.tmpoxy = 755985
|
||||
T.co2 = 14.8176
|
||||
T.oldco2 = 14.8176
|
||||
T.tmpco2 = 14.8176
|
||||
T.n2 = 2.844e+006
|
||||
T.on2 = 2.844e+006
|
||||
T.tn2 = 2.844e+006
|
||||
T.tsl_gas = 0
|
||||
T.osl_gas = 0
|
||||
T.sl_gas = 0
|
||||
T.temp = 293.15
|
||||
T.otemp = 293.15
|
||||
T.ttemp = 293.15
|
||||
*/
|
||||
|
||||
/client/proc/toggle_view_range()
|
||||
set category = "Special Verbs"
|
||||
set name = "Toggle View Range"
|
||||
set desc = "switches between 1x and custom views"
|
||||
|
||||
if(src.view == world.view)
|
||||
src.view = input("Select view range:", "FUCK YE", 7) in list(1,2,3,4,5,6,7,8,9,10,11,12,13,14)
|
||||
else
|
||||
src.view = world.view
|
||||
@@ -0,0 +1,20 @@
|
||||
/client/proc/ticklag(number as num)
|
||||
set category = "Debug"
|
||||
set name = "Ticklag"
|
||||
set desc = "Ticklag"
|
||||
set hidden = 1
|
||||
if(Debug2)
|
||||
if(src.authenticated && src.holder)
|
||||
if(!src.mob)
|
||||
return
|
||||
if(src.holder.rank in list("Coder", "Host"))
|
||||
world.tick_lag = number
|
||||
log_admin("[key_name(src.mob)] set tick_lag to [number]")
|
||||
message_admins("[key_name_admin(usr)] modified world's tick_lag to [number]")
|
||||
else
|
||||
alert("Fuck off, no crashing dis server")
|
||||
return
|
||||
else
|
||||
alert("Debugging is disabled")
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user