mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 02:16:05 +00:00
Fixes a possible problem where admins could be kicked if ghostize failed whilst they tried to Adminghostize
Fixes Issue 959 - the holder's state was not being set properly. It is now all handled at login. Verbs only update if rank or state have changed. You can bypass this simply by setting holder.state = null before calling update_admins() Moved obj/admins stuff into holder.dm so the core stuff is together, pending some possible work on admin-ranks. Admins can no-longer adminghost whilst in the lobby. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4746 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -25,22 +25,6 @@
|
||||
mouse_opacity = 0
|
||||
unacidable = 1//Just to be sure.
|
||||
|
||||
/obj/admins
|
||||
name = "admins"
|
||||
var/rank = null
|
||||
var/owner = null
|
||||
var/state = 1
|
||||
//state = 1 for playing : default
|
||||
//state = 2 for observing
|
||||
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
|
||||
var/admincaster_signature //What you'll sign the newsfeeds as
|
||||
|
||||
/obj/admins/New()
|
||||
src.admincaster_signature = "Nanotrasen Officer #[rand(0,9)][rand(0,9)][rand(0,9)]"
|
||||
..()
|
||||
|
||||
/obj/effect/beam
|
||||
name = "beam"
|
||||
unacidable = 1//Just to be sure.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -17,28 +17,30 @@
|
||||
// verbs += /client/proc/Cell //More air things
|
||||
|
||||
/client/proc/update_admins(var/rank)
|
||||
|
||||
if(!holder)
|
||||
holder = new /obj/admins(src)
|
||||
|
||||
holder.rank = rank
|
||||
/* Unused
|
||||
if(!holder.state)
|
||||
var/state = alert("Which state do you want the admin to begin in?", "Admin-state", "Play", "Observe", "Neither")
|
||||
if(state == "Play")
|
||||
var/need_update = 0
|
||||
//check if our rank has changed
|
||||
if(holder.rank != rank)
|
||||
holder.rank = rank
|
||||
need_update = 1
|
||||
//check if our state has changed
|
||||
if(istype(mob,/mob/living))
|
||||
if(holder.state != 1)
|
||||
holder.state = 1
|
||||
admin_play()
|
||||
return
|
||||
else if(state == "Observe")
|
||||
need_update = 1
|
||||
else
|
||||
if(holder.state != 2)
|
||||
holder.state = 2
|
||||
admin_observe()
|
||||
return
|
||||
else
|
||||
del(holder)
|
||||
return */
|
||||
need_update = 1
|
||||
|
||||
switch (rank)
|
||||
if ("Game Master")
|
||||
if(!need_update) return
|
||||
|
||||
clear_admin_verbs()
|
||||
|
||||
switch(rank)
|
||||
if("Game Master")
|
||||
holder.level = 6
|
||||
|
||||
if ("Game Admin")
|
||||
@@ -88,10 +90,10 @@
|
||||
if ("Admin Observer")
|
||||
holder.level = -1
|
||||
|
||||
if ("Banned")
|
||||
holder.level = -2
|
||||
del(src)
|
||||
return
|
||||
// if ("Banned")
|
||||
// holder.level = -2
|
||||
// del(src)
|
||||
// return
|
||||
|
||||
else
|
||||
del(holder)
|
||||
@@ -286,127 +288,132 @@
|
||||
|
||||
/client/proc/clear_admin_verbs()
|
||||
deadchat = 0
|
||||
|
||||
verbs -= /obj/admins/proc/announce
|
||||
verbs -= /obj/admins/proc/startnow
|
||||
verbs -= /obj/admins/proc/toggleAI //Toggle the AI
|
||||
verbs -= /obj/admins/proc/toggleenter //Toggle enterting
|
||||
verbs -= /obj/admins/proc/toggleguests //Toggle guests entering
|
||||
verbs -= /obj/admins/proc/toggleooc //toggle ooc
|
||||
verbs -= /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc
|
||||
verbs -= /obj/admins/proc/delay //game start delay
|
||||
verbs -= /obj/admins/proc/immreboot //immediate reboot
|
||||
verbs -= /obj/admins/proc/restart //restart
|
||||
verbs -= /obj/admins/proc/show_traitor_panel
|
||||
verbs -= /obj/admins/proc/show_player_panel
|
||||
verbs -= /obj/admins/proc/toggle_aliens //toggle aliens
|
||||
verbs -= /obj/admins/proc/toggle_space_ninja //toggle ninjas
|
||||
verbs -= /obj/admins/proc/adjump
|
||||
verbs -= /obj/admins/proc/view_txt_log
|
||||
verbs -= /obj/admins/proc/view_atk_log
|
||||
verbs -= /obj/admins/proc/spawn_atom
|
||||
verbs -= /obj/admins/proc/adrev //toggle admin revives
|
||||
verbs -= /obj/admins/proc/adspawn //toggle admin item spawning
|
||||
verbs -= /obj/admins/proc/toggleaban //abandon mob
|
||||
verbs -= /client/proc/hide_verbs
|
||||
verbs -= /client/proc/hide_most_verbs
|
||||
verbs -= /client/proc/show_verbs
|
||||
verbs -= /client/proc/colorooc
|
||||
verbs -= /client/proc/triple_ai
|
||||
verbs -= /client/proc/get_admin_state
|
||||
verbs -= /client/proc/reload_admins
|
||||
verbs -= /client/proc/kill_air
|
||||
verbs -= /client/proc/cmd_debug_make_powernets
|
||||
verbs -= /client/proc/object_talk
|
||||
verbs -= /client/proc/strike_team
|
||||
verbs -= /client/proc/cmd_admin_list_open_jobs
|
||||
verbs -= /client/proc/cmd_admin_direct_narrate
|
||||
verbs -= /client/proc/cmd_admin_world_narrate
|
||||
verbs -= /client/proc/callproc
|
||||
verbs -= /client/proc/Cell
|
||||
verbs -= /client/proc/cmd_debug_del_all
|
||||
verbs -= /client/proc/cmd_debug_tog_aliens
|
||||
// verbs -= /client/proc/mapload
|
||||
verbs -= /client/proc/check_words
|
||||
verbs -= /client/proc/drop_bomb
|
||||
verbs.Remove(
|
||||
/obj/admins/proc/announce,
|
||||
/obj/admins/proc/startnow,
|
||||
/obj/admins/proc/toggleAI, /*Toggle the AI*/
|
||||
/obj/admins/proc/toggleenter, /*Toggle enterting*/
|
||||
/obj/admins/proc/toggleguests, /*Toggle guests entering*/
|
||||
/obj/admins/proc/toggleooc, /*toggle ooc*/
|
||||
/obj/admins/proc/toggleoocdead, /*toggle ooc for dead/unc*/
|
||||
/obj/admins/proc/delay, /*game start delay*/
|
||||
/obj/admins/proc/immreboot, /*immediate reboot*/
|
||||
/obj/admins/proc/restart, /*restart*/
|
||||
/obj/admins/proc/show_traitor_panel,
|
||||
/obj/admins/proc/show_player_panel,
|
||||
/obj/admins/proc/toggle_aliens, /*toggle aliens*/
|
||||
/obj/admins/proc/toggle_space_ninja,/*toggle ninjas*/
|
||||
/obj/admins/proc/adjump,
|
||||
/obj/admins/proc/view_txt_log,
|
||||
/obj/admins/proc/view_atk_log,
|
||||
/obj/admins/proc/spawn_atom,
|
||||
/obj/admins/proc/adrev, /*toggle admin revives*/
|
||||
/obj/admins/proc/adspawn, /*toggle admin item spawning*/
|
||||
/obj/admins/proc/toggleaban, /*abandon mob*/
|
||||
/client/proc/hide_verbs,
|
||||
/client/proc/hide_most_verbs,
|
||||
/client/proc/show_verbs,
|
||||
/client/proc/colorooc,
|
||||
/client/proc/triple_ai,
|
||||
/client/proc/get_admin_state,
|
||||
/client/proc/reload_admins,
|
||||
/client/proc/kill_air,
|
||||
/client/proc/cmd_debug_make_powernets,
|
||||
/client/proc/object_talk,
|
||||
/client/proc/strike_team,
|
||||
/client/proc/cmd_admin_list_open_jobs,
|
||||
/client/proc/cmd_admin_direct_narrate,
|
||||
/client/proc/cmd_admin_world_narrate,
|
||||
/client/proc/callproc,
|
||||
/client/proc/Cell,
|
||||
/client/proc/cmd_debug_del_all,
|
||||
/client/proc/cmd_debug_tog_aliens,
|
||||
/client/proc/check_words,
|
||||
/client/proc/drop_bomb,
|
||||
/client/proc/make_sound,
|
||||
/client/proc/only_one,
|
||||
/client/proc/send_space_ninja,
|
||||
/client/proc/debug_variables,
|
||||
/client/proc/cmd_modify_ticker_variables,
|
||||
/client/proc/Debug2, /*debug toggle switch*/
|
||||
/client/proc/toggle_view_range,
|
||||
/client/proc/Getmob,
|
||||
/client/proc/Getkey,
|
||||
/client/proc/sendmob,
|
||||
/client/proc/Jump,
|
||||
/client/proc/jumptokey,
|
||||
/client/proc/jumptomob,
|
||||
/client/proc/jumptoturf,
|
||||
/client/proc/cmd_admin_add_freeform_ai_law,
|
||||
/client/proc/cmd_admin_add_random_ai_law,
|
||||
/client/proc/cmd_admin_rejuvenate,
|
||||
/client/proc/cmd_admin_delete,
|
||||
/client/proc/toggleadminhelpsound,
|
||||
/client/proc/admin_call_shuttle,
|
||||
/client/proc/admin_cancel_shuttle,
|
||||
/client/proc/cmd_admin_dress,
|
||||
/client/proc/respawn_character,
|
||||
/client/proc/spawn_xeno,
|
||||
/client/proc/cmd_admin_add_random_ai_law,
|
||||
/client/proc/secrets,
|
||||
/client/proc/check_antagonists,
|
||||
/client/proc/play_sound,
|
||||
/client/proc/stealth,
|
||||
/client/proc/cmd_admin_check_contents,
|
||||
/client/proc/cmd_admin_create_centcom_report,
|
||||
/client/proc/deadchat, /*toggles deadchat*/
|
||||
/client/proc/cmd_admin_pm_context,
|
||||
/client/proc/cmd_admin_pm_panel,
|
||||
/client/proc/cmd_admin_say,
|
||||
/client/proc/cmd_admin_subtle_message,
|
||||
/client/proc/dsay,
|
||||
/client/proc/admin_ghost,
|
||||
/client/proc/game_panel,
|
||||
/client/proc/player_panel,
|
||||
/client/proc/unban_panel,
|
||||
/client/proc/jobbans,
|
||||
/client/proc/unjobban_panel,
|
||||
/client/proc/hide_verbs,
|
||||
/client/proc/general_report,
|
||||
/client/proc/air_report,
|
||||
/client/proc/cmd_admin_say,
|
||||
/client/proc/cmd_admin_gib_self,
|
||||
/client/proc/restart_controller,
|
||||
/client/proc/play_local_sound,
|
||||
/client/proc/enable_debug_verbs,
|
||||
/client/proc/toggleprayers,
|
||||
/client/proc/toggle_clickproc, /*TODO ERRORAGE (Temporary proc while the enw clickproc is being tested)*/
|
||||
/client/proc/toggle_hear_deadcast,
|
||||
/client/proc/toggle_hear_radio,
|
||||
/client/proc/player_panel_new,
|
||||
/client/proc/toggle_gravity_on,
|
||||
/client/proc/toggle_gravity_off,
|
||||
/client/proc/toggle_random_events,
|
||||
/client/proc/deadmin_self,
|
||||
/client/proc/jumptocoord,
|
||||
/client/proc/everyone_random,
|
||||
/client/proc/Set_Holiday,
|
||||
/client/proc/giveruntimelog, /*used by coders to retrieve runtime logs*/
|
||||
/client/proc/getserverlog,
|
||||
/client/proc/cinematic, /*show a cinematic sequence*/
|
||||
/client/proc/admin_memo,
|
||||
/client/proc/investigate_show, /*investigate in-game mishaps using various logs.*/
|
||||
/client/proc/toggle_log_hrefs,
|
||||
/client/proc/ToRban,
|
||||
/proc/possess,
|
||||
/proc/release,
|
||||
/client/proc/togglebuildmodeself,
|
||||
/client/proc/kill_airgroup,
|
||||
/client/proc/debug_controller,
|
||||
/client/proc/startSinglo,
|
||||
/client/proc/check_ai_laws,
|
||||
/client/proc/cmd_debug_mob_lists,
|
||||
/obj/admins/proc/access_news_network,
|
||||
/client/proc/one_click_antag,
|
||||
/client/proc/invisimin
|
||||
)
|
||||
//verbs -= /client/proc/mapload
|
||||
//verbs -= /client/proc/cmd_admin_drop_everything --merged with view variables
|
||||
verbs -= /client/proc/make_sound
|
||||
verbs -= /client/proc/only_one
|
||||
verbs -= /client/proc/send_space_ninja
|
||||
verbs -= /client/proc/debug_variables
|
||||
verbs -= /client/proc/cmd_modify_ticker_variables
|
||||
verbs -= /client/proc/Debug2 //debug toggle switch
|
||||
verbs -= /client/proc/toggle_view_range
|
||||
verbs -= /client/proc/Getmob
|
||||
verbs -= /client/proc/Getkey
|
||||
verbs -= /client/proc/sendmob
|
||||
verbs -= /client/proc/Jump
|
||||
verbs -= /client/proc/jumptokey
|
||||
verbs -= /client/proc/jumptomob
|
||||
verbs -= /client/proc/jumptoturf
|
||||
verbs -= /client/proc/cmd_admin_add_freeform_ai_law
|
||||
verbs -= /client/proc/cmd_admin_add_random_ai_law
|
||||
verbs -= /client/proc/cmd_admin_rejuvenate
|
||||
verbs -= /client/proc/cmd_admin_delete
|
||||
verbs -= /client/proc/toggleadminhelpsound
|
||||
//verbs -= /client/proc/cmd_admin_remove_plasma --This proc is outdated, does not do anything
|
||||
verbs -= /client/proc/admin_call_shuttle
|
||||
verbs -= /client/proc/admin_cancel_shuttle
|
||||
verbs -= /client/proc/cmd_admin_dress
|
||||
verbs -= /client/proc/respawn_character
|
||||
verbs -= /client/proc/spawn_xeno
|
||||
verbs -= /client/proc/cmd_admin_add_random_ai_law
|
||||
verbs -= /client/proc/secrets
|
||||
verbs -= /client/proc/check_antagonists
|
||||
verbs -= /client/proc/play_sound
|
||||
verbs -= /client/proc/stealth
|
||||
verbs -= /client/proc/cmd_admin_check_contents
|
||||
verbs -= /client/proc/cmd_admin_create_centcom_report
|
||||
verbs -= /client/proc/deadchat //toggles deadchat
|
||||
//verbs -= /client/proc/cmd_admin_mute --was never used (according to stats trackind) - use show player panel --erro
|
||||
verbs -= /client/proc/cmd_admin_pm_context
|
||||
verbs -= /client/proc/cmd_admin_pm_panel
|
||||
verbs -= /client/proc/cmd_admin_say
|
||||
verbs -= /client/proc/cmd_admin_subtle_message
|
||||
//verbs -= /client/proc/warn
|
||||
verbs -= /client/proc/dsay
|
||||
verbs -= /client/proc/admin_ghost
|
||||
verbs -= /client/proc/game_panel
|
||||
verbs -= /client/proc/player_panel
|
||||
verbs -= /client/proc/unban_panel
|
||||
verbs -= /client/proc/jobbans
|
||||
verbs -= /client/proc/unjobban_panel
|
||||
verbs -= /client/proc/hide_verbs
|
||||
verbs -= /client/proc/general_report
|
||||
verbs -= /client/proc/air_report
|
||||
verbs -= /client/proc/cmd_admin_say
|
||||
verbs -= /client/proc/cmd_admin_gib_self
|
||||
verbs -= /client/proc/restart_controller
|
||||
verbs -= /client/proc/play_local_sound
|
||||
verbs -= /client/proc/enable_debug_verbs
|
||||
verbs -= /client/proc/toggleprayers
|
||||
// verbs -= /client/proc/Blobize
|
||||
// verbs -= /client/proc/Blobcount
|
||||
verbs -= /client/proc/toggle_clickproc //TODO ERRORAGE (Temporary proc while the enw clickproc is being tested)
|
||||
verbs -= /client/proc/toggle_hear_deadcast
|
||||
verbs -= /client/proc/toggle_hear_radio
|
||||
verbs -= /client/proc/player_panel_new
|
||||
verbs -= /client/proc/toggle_gravity_on
|
||||
verbs -= /client/proc/toggle_gravity_off
|
||||
verbs -= /client/proc/toggle_random_events
|
||||
verbs -= /client/proc/deadmin_self
|
||||
verbs -= /client/proc/jumptocoord
|
||||
verbs -= /client/proc/everyone_random
|
||||
verbs -= /client/proc/Set_Holiday
|
||||
verbs -= /client/proc/giveruntimelog //used by coders to retrieve runtime logs
|
||||
verbs -= /client/proc/getserverlog
|
||||
verbs -= /client/proc/cinematic //show a cinematic sequence
|
||||
verbs -= /client/proc/admin_memo
|
||||
verbs -= /client/proc/investigate_show //investigate in-game mishaps using various logs.
|
||||
verbs -= /client/proc/toggle_log_hrefs
|
||||
verbs -= /client/proc/ToRban
|
||||
verbs -= /proc/possess
|
||||
verbs -= /proc/release
|
||||
//verbs -= /client/proc/give_spell --Merged with view variables
|
||||
//verbs -= /client/proc/cmd_admin_ninjafy --Merged with view variables
|
||||
//verbs -= /client/proc/cmd_modify_object_variables --Merged with view variables
|
||||
@@ -420,15 +427,11 @@
|
||||
//verbs -= /client/proc/cmd_admin_prison --Merged with player panel
|
||||
//verbs -= /obj/admins/proc/unprison --Merged with player panel
|
||||
//verbs -= /client/proc/cmd_switch_radio --removed because tcommsat is staying
|
||||
verbs -= /client/proc/togglebuildmodeself
|
||||
verbs -= /client/proc/kill_airgroup
|
||||
verbs -= /client/proc/debug_controller
|
||||
verbs -= /client/proc/startSinglo
|
||||
verbs -= /client/proc/check_ai_laws
|
||||
verbs -= /client/proc/cmd_debug_mob_lists
|
||||
verbs -= /obj/admins/proc/access_news_network
|
||||
verbs -= /client/proc/one_click_antag
|
||||
verbs -= /client/proc/invisimin
|
||||
// verbs -= /client/proc/Blobize
|
||||
// verbs -= /client/proc/Blobcount
|
||||
//verbs -= /client/proc/warn
|
||||
//verbs -= /client/proc/cmd_admin_mute --was never used (according to stats trackind) - use show player panel --erro
|
||||
//verbs -= /client/proc/cmd_admin_remove_plasma --This proc is outdated, does not do anything
|
||||
return
|
||||
|
||||
/client/proc/admin_ghost()
|
||||
@@ -441,11 +444,12 @@
|
||||
ghost.can_reenter_corpse = 1 //just in-case.
|
||||
ghost.reenter_corpse()
|
||||
feedback_add_details("admin_verb","P") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
else
|
||||
else if(!istype(mob,/mob/new_player))
|
||||
//ghostize
|
||||
var/mob/body = mob
|
||||
body.ghostize(1)
|
||||
if(body) body.key = "@[key]" //Haaaaaaaack. But the people have spoken. If it breaks; blame adminbus
|
||||
if(body && !body.key)
|
||||
body.key = "@[key]" //Haaaaaaaack. But the people have spoken. If it breaks; blame adminbus
|
||||
feedback_add_details("admin_verb","O") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
|
||||
@@ -689,7 +693,7 @@
|
||||
src << "Restoring admin verbs back"
|
||||
|
||||
var/temp = deadchat
|
||||
clear_admin_verbs()
|
||||
holder.state = null //forces a full verbs update
|
||||
update_admins(holder.rank)
|
||||
deadchat = temp
|
||||
feedback_add_details("admin_verb","TAVVS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
@@ -731,7 +735,6 @@
|
||||
log_admin("[src] deadmined themself.")
|
||||
message_admins("[src] deadmined themself.", 1)
|
||||
src.clear_admin_verbs()
|
||||
src.update_admins(null)
|
||||
admins.Remove(src.ckey)
|
||||
admin_list -= src
|
||||
usr << "You are now a normal player."
|
||||
|
||||
2566
code/modules/admin/holder.dm
Normal file
2566
code/modules/admin/holder.dm
Normal file
File diff suppressed because it is too large
Load Diff
@@ -33,7 +33,7 @@
|
||||
if( findtext(href,"<script",1,0) )
|
||||
world.log << "Attempted use of scripts within a topic call, by [src]"
|
||||
message_admins("Attempted use of scripts within a topic call, by [src]")
|
||||
del(usr)
|
||||
//del(usr)
|
||||
return
|
||||
|
||||
//Admin PM
|
||||
@@ -97,15 +97,16 @@
|
||||
host = key
|
||||
world.update_status()
|
||||
|
||||
..() //calls mob.Login()
|
||||
|
||||
//Admin Authorisation
|
||||
if( ckey in admins )
|
||||
holder = new /obj/admins(src)
|
||||
holder.rank = admins[ckey]
|
||||
admin_list += src
|
||||
update_admins(admins[ckey])
|
||||
// update_admins(admins[ckey]) //handled by Login
|
||||
|
||||
..() //calls mob.Login()
|
||||
|
||||
if(holder)
|
||||
admin_memo_show()
|
||||
|
||||
log_client_to_db()
|
||||
|
||||
@@ -1,7 +1,2 @@
|
||||
/mob/dead/observer/Login()
|
||||
..()
|
||||
if(client.holder && client.holder.state != 2)
|
||||
client.holder.state = 2
|
||||
var/rank = client.holder.rank
|
||||
client.clear_admin_verbs()
|
||||
client.update_admins(rank)
|
||||
@@ -18,13 +18,6 @@
|
||||
if("nuclear emergency")
|
||||
if(mind in ticker.mode:syndicates)
|
||||
ticker.mode.update_all_synd_icons()
|
||||
|
||||
|
||||
if(client.holder && client.holder.state != 1)
|
||||
client.holder.state = 1
|
||||
var/rank = client.holder.rank
|
||||
client.clear_admin_verbs()
|
||||
client.update_admins(rank)
|
||||
return .
|
||||
|
||||
//This stuff needs to be merged from cloning.dm but I'm not in the mood to be shouted at for breaking all the things :< ~Carn
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
//handles setting lastKnownIP and computer_id for use by the ban systems as well as checking for multikeying
|
||||
/mob/proc/update_Login_details()
|
||||
//trigger admin holder updates. This is hear as all Login() calls this proc.
|
||||
if(client.holder)
|
||||
client.update_admins(client.holder.rank)
|
||||
|
||||
//Multikey checks and logging
|
||||
lastKnownIP = client.address
|
||||
computer_id = client.computer_id
|
||||
log_access("Login: [key_name(src)] from [lastKnownIP ? lastKnownIP : "localhost"]-[computer_id] || BYOND v[client.byond_version]")
|
||||
|
||||
@@ -813,6 +813,7 @@
|
||||
#include "code\modules\admin\create_mob.dm"
|
||||
#include "code\modules\admin\create_object.dm"
|
||||
#include "code\modules\admin\create_turf.dm"
|
||||
#include "code\modules\admin\holder.dm"
|
||||
#include "code\modules\admin\IsBanned.dm"
|
||||
#include "code\modules\admin\NewBan.dm"
|
||||
#include "code\modules\admin\newbanjob.dm"
|
||||
@@ -952,7 +953,6 @@
|
||||
#include "code\modules\mob\update_icons.dm"
|
||||
#include "code\modules\mob\dead\death.dm"
|
||||
#include "code\modules\mob\dead\observer\hud.dm"
|
||||
#include "code\modules\mob\dead\observer\login.dm"
|
||||
#include "code\modules\mob\dead\observer\logout.dm"
|
||||
#include "code\modules\mob\dead\observer\observer.dm"
|
||||
#include "code\modules\mob\dead\observer\say.dm"
|
||||
|
||||
Reference in New Issue
Block a user