Re-added the default-vote config option for voting. For every client connected more than the total votes, it will add 1 to the default vote option (No restart or the current game-mode).

/obj/admins is now /datum/admins because that's what datums are for you silly people
Moved var/datum/marked_datum from /obj/ to /datum/admins
admin datums are persistent throughout the round. They are stored in the var/list/admins rather than the ranks. This is so admin preferences may be moved into the datum to have them persist even after Login/Logout/Disconnects.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4749 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
elly1989@rocketmail.com
2012-09-24 11:40:41 +00:00
parent c2c5f3aa49
commit f8da06db13
20 changed files with 2735 additions and 134 deletions

View File

@@ -1,5 +1,5 @@
obj/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = -1, var/reason, var/job = "", var/rounds = 0)
datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = -1, var/reason, var/job = "", var/rounds = 0)
var/user = sqlfdbklogin
var/pass = sqlfdbkpass
var/db = sqlfdbkdb
@@ -79,7 +79,7 @@ obj/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = -1
obj/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "")
datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "")
var/user = sqlfdbklogin
var/pass = sqlfdbkpass
var/db = sqlfdbkdb
@@ -149,7 +149,7 @@ obj/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "")
DB_ban_unban_by_id(ban_id)
obj/admins/proc/DB_ban_unban_by_id(var/id)
datum/admins/proc/DB_ban_unban_by_id(var/id)
var/user = sqlfdbklogin
var/pass = sqlfdbkpass
var/db = sqlfdbkdb

View File

@@ -163,7 +163,7 @@ var/savefile/Banlist
timeleftstring = "[exp] Minutes"
return timeleftstring
/obj/admins/proc/unbanpanel()
/datum/admins/proc/unbanpanel()
var/count = 0
var/dat
//var/dat = "<HR><B>Unban Player:</B> \blue(U) = Unban , (E) = Edit Ban\green (Total<HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >"

View File

@@ -19,7 +19,7 @@ var/global/floorIsLava = 0
///////////////////////////////////////////////////////////////////////////////////////////////Panels
/obj/admins/proc/show_player_panel(var/mob/M in mob_list)
/datum/admins/proc/show_player_panel(var/mob/M in mob_list)
set category = "Admin"
set name = "Show Player Panel"
set desc="Edit player (respawn, ban, heal, etc)"
@@ -27,9 +27,9 @@ var/global/floorIsLava = 0
if(!M)
usr << "You seem to be selecting a mob that doesn't exist anymore."
return
if (!istype(src,/obj/admins))
if (!istype(src,/datum/admins))
src = usr.client.holder
if (!istype(src,/obj/admins))
if (!istype(src,/datum/admins))
usr << "Error: you are not an admin!"
return
@@ -157,14 +157,14 @@ var/global/floorIsLava = 0
feedback_add_details("admin_verb","SPP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/access_news_network() //MARKER
/datum/admins/proc/access_news_network() //MARKER
set category = "Fun"
set name = "Access Newscaster Network"
set desc = "Allows you to view, add and edit news feeds."
if (!istype(src,/obj/admins))
if (!istype(src,/datum/admins))
src = usr.client.holder
if (!istype(src,/obj/admins))
if (!istype(src,/datum/admins))
usr << "Error: you are not an admin!"
return
var/dat
@@ -350,7 +350,7 @@ var/global/floorIsLava = 0
/obj/admins/proc/Jobbans()
/datum/admins/proc/Jobbans()
if ((src.rank in list( "Game Admin", "Game Master" )))
var/dat = "<B>Job Bans!</B><HR><table>"
@@ -362,7 +362,7 @@ var/global/floorIsLava = 0
dat += "</table>"
usr << browse(dat, "window=ban;size=400x400")
/obj/admins/proc/Game()
/datum/admins/proc/Game()
var/dat
var/lvl = 0
@@ -404,21 +404,21 @@ var/global/floorIsLava = 0
usr << browse(dat, "window=admin2;size=210x180")
return
/*
/obj/admins/proc/goons()
/datum/admins/proc/goons()
var/dat = "<HR><B>GOOOOOOONS</B><HR><table cellspacing=5><tr><th>Key</th><th>SA Username</th></tr>"
for(var/t in goon_keylist)
dat += text("<tr><td><A href='?src=\ref[src];remove=[ckey(t)]'><B>[t]</B></A></td><td>[goon_keylist[ckey(t)]]</td></tr>")
dat += "</table>"
usr << browse(dat, "window=ban;size=300x400")
/obj/admins/proc/beta_testers()
/datum/admins/proc/beta_testers()
var/dat = "<HR><B>Beta testers</B><HR><table cellspacing=5><tr><th>Key</th></tr>"
for(var/t in beta_tester_keylist)
dat += text("<tr><td>[t]</td></tr>")
dat += "</table>"
usr << browse(dat, "window=ban;size=300x400")
*/
/obj/admins/proc/Secrets()
/datum/admins/proc/Secrets()
if (!usr.client.holder)
return
@@ -533,7 +533,7 @@ var/global/floorIsLava = 0
//i.e. buttons/verbs
/obj/admins/proc/restart()
/datum/admins/proc/restart()
set category = "Server"
set name = "Restart"
set desc="Restarts the world"
@@ -556,7 +556,7 @@ var/global/floorIsLava = 0
world.Reboot()
/obj/admins/proc/announce()
/datum/admins/proc/announce()
set category = "Special Verbs"
set name = "Announce"
set desc="Announce your desires to the world"
@@ -568,7 +568,7 @@ var/global/floorIsLava = 0
log_admin("Announce: [key_name(usr)] : [message]")
feedback_add_details("admin_verb","A") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggleooc()
/datum/admins/proc/toggleooc()
set category = "Server"
set desc="Toggle dis bitch"
set name="Toggle OOC"
@@ -581,7 +581,7 @@ var/global/floorIsLava = 0
message_admins("[key_name_admin(usr)] toggled OOC.", 1)
feedback_add_details("admin_verb","TOOC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggleoocdead()
/datum/admins/proc/toggleoocdead()
set category = "Server"
set desc="Toggle dis bitch"
set name="Toggle Dead OOC"
@@ -591,7 +591,7 @@ var/global/floorIsLava = 0
message_admins("[key_name_admin(usr)] toggled Dead OOC.", 1)
feedback_add_details("admin_verb","TDOOC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggletraitorscaling()
/datum/admins/proc/toggletraitorscaling()
set category = "Server"
set desc="Toggle traitor scaling"
set name="Toggle Traitor Scaling"
@@ -600,7 +600,7 @@ var/global/floorIsLava = 0
message_admins("[key_name_admin(usr)] toggled Traitor Scaling [traitor_scaling ? "on" : "off"].", 1)
feedback_add_details("admin_verb","TTS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/startnow()
/datum/admins/proc/startnow()
set category = "Server"
set desc="Start the round RIGHT NOW"
set name="Start Now"
@@ -617,7 +617,7 @@ var/global/floorIsLava = 0
usr << "<font color='red'>Error: Start Now: Game has already started.</font>"
return 0
/obj/admins/proc/toggleenter()
/datum/admins/proc/toggleenter()
set category = "Server"
set desc="People can't enter"
set name="Toggle Entering"
@@ -631,7 +631,7 @@ var/global/floorIsLava = 0
world.update_status()
feedback_add_details("admin_verb","TE") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggleAI()
/datum/admins/proc/toggleAI()
set category = "Server"
set desc="People can't be AI"
set name="Toggle AI"
@@ -644,7 +644,7 @@ var/global/floorIsLava = 0
world.update_status()
feedback_add_details("admin_verb","TAI") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggleaban()
/datum/admins/proc/toggleaban()
set category = "Server"
set desc="Respawn basically"
set name="Toggle Respawn"
@@ -658,7 +658,7 @@ var/global/floorIsLava = 0
world.update_status()
feedback_add_details("admin_verb","TR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggle_aliens()
/datum/admins/proc/toggle_aliens()
set category = "Server"
set desc="Toggle alien mobs"
set name="Toggle Aliens"
@@ -667,7 +667,7 @@ var/global/floorIsLava = 0
message_admins("[key_name_admin(usr)] toggled Aliens [aliens_allowed ? "on" : "off"].", 1)
feedback_add_details("admin_verb","TA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggle_space_ninja()
/datum/admins/proc/toggle_space_ninja()
set category = "Server"
set desc="Toggle space ninjas spawning."
set name="Toggle Space Ninjas"
@@ -676,7 +676,7 @@ var/global/floorIsLava = 0
message_admins("[key_name_admin(usr)] toggled Space Ninjas [toggle_space_ninja ? "on" : "off"].", 1)
feedback_add_details("admin_verb","TSN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/delay()
/datum/admins/proc/delay()
set category = "Server"
set desc="Delay the game start"
set name="Delay"
@@ -691,7 +691,7 @@ var/global/floorIsLava = 0
log_admin("[key_name(usr)] removed the delay.")
feedback_add_details("admin_verb","DELAY") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/adjump()
/datum/admins/proc/adjump()
set category = "Server"
set desc="Toggle admin jumping"
set name="Toggle Jump"
@@ -699,7 +699,7 @@ var/global/floorIsLava = 0
message_admins("\blue Toggled admin jumping to [config.allow_admin_jump].")
feedback_add_details("admin_verb","TJ") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/adspawn()
/datum/admins/proc/adspawn()
set category = "Server"
set desc="Toggle admin spawning"
set name="Toggle Spawn"
@@ -707,7 +707,7 @@ var/global/floorIsLava = 0
message_admins("\blue Toggled admin item spawning to [config.allow_admin_spawning].")
feedback_add_details("admin_verb","TAS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/adrev()
/datum/admins/proc/adrev()
set category = "Server"
set desc="Toggle admin revives"
set name="Toggle Revive"
@@ -715,7 +715,7 @@ var/global/floorIsLava = 0
message_admins("\blue Toggled reviving to [config.allow_admin_rev].")
feedback_add_details("admin_verb","TAR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/immreboot()
/datum/admins/proc/immreboot()
set category = "Server"
set desc="Reboots the server post haste"
set name="Immediate Reboot"
@@ -756,7 +756,7 @@ var/global/floorIsLava = 0
usr << "Prayer visibility turned off"
feedback_add_details("admin_verb","TP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/unprison(var/mob/M in mob_list)
/datum/admins/proc/unprison(var/mob/M in mob_list)
set category = "Admin"
set name = "Unprison"
if (M.z == 2)
@@ -817,7 +817,7 @@ var/global/floorIsLava = 0
return 0
/*
/obj/admins/proc/get_sab_desc(var/target)
/datum/admins/proc/get_sab_desc(var/target)
switch(target)
if(1)
return "Destroy at least 70% of the plasma canisters on the station"
@@ -834,7 +834,7 @@ var/global/floorIsLava = 0
else
return "Error: Invalid sabotage target: [target]"
*/
/obj/admins/proc/spawn_atom(var/object as text)
/datum/admins/proc/spawn_atom(var/object as text)
set category = "Debug"
set desc= "(atom path) Spawn an atom"
set name= "Spawn"
@@ -869,7 +869,7 @@ var/global/floorIsLava = 0
feedback_add_details("admin_verb","SA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/show_traitor_panel(var/mob/M in sortmobs())
/datum/admins/proc/show_traitor_panel(var/mob/M in sortmobs())
set category = "Admin"
set desc = "Edit mobs's memory and role"
set name = "Show Traitor Panel"
@@ -881,7 +881,7 @@ var/global/floorIsLava = 0
feedback_add_details("admin_verb","STP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggletintedweldhelmets()
/datum/admins/proc/toggletintedweldhelmets()
set category = "Debug"
set desc="Reduces view range when wearing welding helmets"
set name="Toggle tinted welding helmes"
@@ -894,7 +894,7 @@ var/global/floorIsLava = 0
message_admins("[key_name_admin(usr)] toggled tinted_weldhelh.", 1)
feedback_add_details("admin_verb","TTWH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/obj/admins/proc/toggleguests()
/datum/admins/proc/toggleguests()
set category = "Server"
set desc="Guests can't enter"
set name="Toggle guests"
@@ -915,7 +915,7 @@ var/global/floorIsLava = 0
feedback_add_details("admin_verb","UJBP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
return
/obj/admins/proc/output_ai_laws()
/datum/admins/proc/output_ai_laws()
var/ai_number = 0
for(var/mob/living/silicon/S in mob_list)
ai_number++

View File

@@ -18,7 +18,9 @@
/client/proc/update_admins(var/rank)
if(!holder)
holder = new /obj/admins(src)
holder = new /datum/admins(rank)
admin_list |= src
admins[ckey] = holder
var/need_update = 0
//check if our rank has changed
@@ -73,7 +75,7 @@
holder.level = 2
if(holder.state == 2) // if observing
deadchat = 1
verbs += /obj/admins/proc/toggleaban //abandon mob
verbs += /datum/admins/proc/toggleaban //abandon mob
verbs += /client/proc/deadchat //toggles deadchat
verbs += /client/proc/cmd_admin_check_contents
verbs += /client/proc/Jump
@@ -112,14 +114,14 @@
//Moderator
if (holder.level >= 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/show_player_panel
verbs += /datum/admins/proc/announce
verbs += /datum/admins/proc/startnow
verbs += /datum/admins/proc/toggleAI //Toggle the AI
verbs += /datum/admins/proc/toggleenter //Toggle enterting
verbs += /datum/admins/proc/toggleguests //Toggle guests entering
verbs += /datum/admins/proc/toggleooc //toggle ooc
verbs += /datum/admins/proc/toggleoocdead //toggle ooc for dead/unc
verbs += /datum/admins/proc/show_player_panel
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
@@ -140,14 +142,14 @@
verbs += /client/proc/deadmin_self
verbs += /client/proc/check_ai_laws
//verbs += /client/proc/cmd_admin_prison --Merged with player panel
//verbs += /obj/admins/proc/unprison --Merged with player panel
//verbs += /datum/admins/proc/unprison --Merged with player panel
else return
//Temporary Admin
if (holder.level >= 1)
verbs += /obj/admins/proc/delay //game start delay
verbs += /obj/admins/proc/immreboot //immediate reboot
verbs += /obj/admins/proc/restart //restart
verbs += /datum/admins/proc/delay //game start delay
verbs += /datum/admins/proc/immreboot //immediate reboot
verbs += /datum/admins/proc/restart //restart
verbs += /client/proc/cmd_admin_check_contents
verbs += /client/proc/cmd_admin_create_centcom_report
verbs += /client/proc/toggle_hear_deadcast
@@ -172,10 +174,10 @@
seeprayers = 1
verbs += /client/proc/invisimin
verbs += /obj/admins/proc/view_txt_log
verbs += /obj/admins/proc/view_atk_log
verbs += /obj/admins/proc/toggleaban //abandon mob
verbs += /obj/admins/proc/show_traitor_panel
verbs += /datum/admins/proc/view_txt_log
verbs += /datum/admins/proc/view_atk_log
verbs += /datum/admins/proc/toggleaban //abandon mob
verbs += /datum/admins/proc/show_traitor_panel
verbs += /client/proc/getserverlog //fetch an old serverlog to look at
//verbs += /client/proc/cmd_admin_remove_plasma --This proc is outdated, does not do anything
verbs += /client/proc/admin_call_shuttle
@@ -195,10 +197,10 @@
//Badmin
if (holder.level >= 4)
verbs += /obj/admins/proc/adrev //toggle admin revives
verbs += /obj/admins/proc/adspawn //toggle admin item spawning
verbs += /datum/admins/proc/adrev //toggle admin revives
verbs += /datum/admins/proc/adspawn //toggle admin item spawning
verbs += /client/proc/debug_variables
verbs += /obj/admins/proc/access_news_network //Admin access to the newscaster network
verbs += /datum/admins/proc/access_news_network //Admin access to the newscaster network
verbs += /client/proc/cmd_modify_ticker_variables
verbs += /client/proc/Debug2 //debug toggle switch
verbs += /client/proc/toggle_view_range
@@ -226,7 +228,7 @@
//Game Admin
if (holder.level >= 5)
verbs += /obj/admins/proc/spawn_atom
verbs += /datum/admins/proc/spawn_atom
verbs += /client/proc/cmd_admin_list_open_jobs
verbs += /client/proc/cmd_admin_direct_narrate
verbs += /client/proc/colorooc
@@ -264,9 +266,9 @@
//Game Master
if (holder.level >= 6)
verbs += /obj/admins/proc/toggle_aliens //toggle aliens
verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas
verbs += /obj/admins/proc/adjump
verbs += /datum/admins/proc/toggle_aliens //toggle aliens
verbs += /datum/admins/proc/toggle_space_ninja //toggle ninjas
verbs += /datum/admins/proc/adjump
verbs += /client/proc/callproc
verbs += /client/proc/triple_ai
verbs += /client/proc/get_admin_state
@@ -289,27 +291,27 @@
/client/proc/clear_admin_verbs()
deadchat = 0
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*/
/datum/admins/proc/announce,
/datum/admins/proc/startnow,
/datum/admins/proc/toggleAI, /*Toggle the AI*/
/datum/admins/proc/toggleenter, /*Toggle enterting*/
/datum/admins/proc/toggleguests, /*Toggle guests entering*/
/datum/admins/proc/toggleooc, /*toggle ooc*/
/datum/admins/proc/toggleoocdead, /*toggle ooc for dead/unc*/
/datum/admins/proc/delay, /*game start delay*/
/datum/admins/proc/immreboot, /*immediate reboot*/
/datum/admins/proc/restart, /*restart*/
/datum/admins/proc/show_traitor_panel,
/datum/admins/proc/show_player_panel,
/datum/admins/proc/toggle_aliens, /*toggle aliens*/
/datum/admins/proc/toggle_space_ninja,/*toggle ninjas*/
/datum/admins/proc/adjump,
/datum/admins/proc/view_txt_log,
/datum/admins/proc/view_atk_log,
/datum/admins/proc/spawn_atom,
/datum/admins/proc/adrev, /*toggle admin revives*/
/datum/admins/proc/adspawn, /*toggle admin item spawning*/
/datum/admins/proc/toggleaban, /*abandon mob*/
/client/proc/hide_verbs,
/client/proc/hide_most_verbs,
/client/proc/show_verbs,
@@ -408,7 +410,7 @@
/client/proc/startSinglo,
/client/proc/check_ai_laws,
/client/proc/cmd_debug_mob_lists,
/obj/admins/proc/access_news_network,
/datum/admins/proc/access_news_network,
/client/proc/one_click_antag,
/client/proc/invisimin
)
@@ -425,7 +427,7 @@
//verbs -= /client/proc/cmd_admin_attack_log --Merged with view variables
//verbs -= /proc/togglebuildmode --Merged with view variables
//verbs -= /client/proc/cmd_admin_prison --Merged with player panel
//verbs -= /obj/admins/proc/unprison --Merged with player panel
//verbs -= /datum/admins/proc/unprison --Merged with player panel
//verbs -= /client/proc/cmd_switch_radio --removed because tcommsat is staying
// verbs -= /client/proc/Blobize
// verbs -= /client/proc/Blobcount
@@ -444,7 +446,9 @@
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 if(!istype(mob,/mob/new_player))
else if(istype(mob,/mob/new_player))
src << "<font color='red'>Error: Aghost: Can't admin-ghost whilst in the lobby. Join or Observe first.</font>"
else
//ghostize
var/mob/body = mob
body.ghostize(1)
@@ -731,12 +735,9 @@
if(src.holder)
if(alert("Confirm self-deadmin for the round? You can't re-admin yourself without someont promoting you.",,"Yes","No") == "Yes")
del(holder)
log_admin("[src] deadmined themself.")
message_admins("[src] deadmined themself.", 1)
src.clear_admin_verbs()
admins.Remove(src.ckey)
admin_list -= src
deadmin()
usr << "You are now a normal player."
feedback_add_details("admin_verb","DAS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -773,7 +774,7 @@
verbs += /client/proc/cmd_admin_gib_self
verbs += /client/proc/deadchat //toggles deadchat
verbs += /obj/admins/proc/toggleooc //toggle ooc
verbs += /datum/admins/proc/toggleooc //toggle ooc
verbs += /client/proc/cmd_admin_say//asay
verbs += /client/proc/toggleadminhelpsound
feedback_add_details("admin_verb","HMV") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -793,7 +794,7 @@
verbs += /client/proc/show_verbs
verbs += /client/proc/deadchat //toggles deadchat
verbs += /obj/admins/proc/toggleooc //toggle ooc
verbs += /datum/admins/proc/toggleooc //toggle ooc
verbs += /client/proc/cmd_admin_say//asay
feedback_add_details("admin_verb","TAVVH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
return

View File

@@ -1,5 +1,5 @@
/var/create_mob_html = null
/obj/admins/proc/create_mob(var/mob/user)
/datum/admins/proc/create_mob(var/mob/user)
if (!create_mob_html)
var/mobjs = null
mobjs = dd_list2text(typesof(/mob), ";")

View File

@@ -1,6 +1,6 @@
/var/create_object_html = null
/obj/admins/proc/create_object(var/mob/user)
/datum/admins/proc/create_object(var/mob/user)
if (!create_object_html)
var/objectjs = null
objectjs = dd_list2text(typesof(/obj), ";")
@@ -10,7 +10,7 @@
user << browse(dd_replacetext(create_object_html, "/* ref src */", "\ref[src]"), "window=create_object;size=425x475")
/obj/admins/proc/quick_create_object(var/mob/user)
/datum/admins/proc/quick_create_object(var/mob/user)
var/quick_create_object_html = null
var/pathtext = null

View File

@@ -1,5 +1,5 @@
/var/create_turf_html = null
/obj/admins/proc/create_turf(var/mob/user)
/datum/admins/proc/create_turf(var/mob/user)
if (!create_turf_html)
var/turfjs = null
turfjs = dd_list2text(typesof(/turf), ";")

File diff suppressed because it is too large Load Diff

View File

@@ -205,7 +205,7 @@ var/savefile/Banlistjob
timeleftstring = "[exp] Minutes"
return timeleftstring
/obj/admins/proc/unjobbanpanel()
/datum/admins/proc/unjobbanpanel()
var/count = 0
var/dat
//var/dat = "<HR><B>Unban Player:</B> \blue(U) = Unban , (E) = Edit Ban\green (Total<HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >"
@@ -219,7 +219,7 @@ var/savefile/Banlistjob
dat = "<HR><B>Bans:</B> <FONT COLOR=blue>(U) = Unban , </FONT> - <FONT COLOR=green>([count] Bans)</FONT><HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >[dat]"
usr << browse(dat, "window=unbanp;size=875x400")
/*/obj/admins/proc/permjobban(ckey, computerid, reason, bannedby, temp, minutes, rank)
/*/datum/admins/proc/permjobban(ckey, computerid, reason, bannedby, temp, minutes, rank)
if(AddBanjob(ckey, computerid, reason, usr.ckey, 0, 0, job))
M << "\red<BIG><B>You have been banned from [job] by [usr.client.ckey].\nReason: [reason].</B></BIG>"
M << "\red This is a permanent ban."
@@ -229,7 +229,7 @@ var/savefile/Banlistjob
M << "\red No ban appeals URL has been set."
log_admin("[usr.client.ckey] has banned from [job] [ckey].\nReason: [reason]\nThis is a permanent ban.")
message_admins("\blue[usr.client.ckey] has banned from [job] [ckey].\nReason: [reason]\nThis is a permanent ban.")
/obj/admins/proc/timejobban(ckey, computerid, reason, bannedby, temp, minutes, rank)
/datum/admins/proc/timejobban(ckey, computerid, reason, bannedby, temp, minutes, rank)
if(AddBanjob(ckey, computerid, reason, usr.ckey, 1, mins, job))
M << "\red<BIG><B>You have been jobbanned from [job] by [usr.client.ckey].\nReason: [reason].</B></BIG>"
M << "\red This is a temporary ban, it will be removed in [mins] minutes."

View File

@@ -4,11 +4,11 @@
#define NOTESFILE "data/player_notes.sav" //where the player notes are saved
obj/admins/proc/notes_show(var/ckey)
datum/admins/proc/notes_show(var/ckey)
usr << browse("<head><title>Player Notes</title></head><body>[notes_gethtml(ckey)]</body>","window=player_notes;size=700x400")
obj/admins/proc/notes_gethtml(var/ckey)
datum/admins/proc/notes_gethtml(var/ckey)
var/savefile/notesfile = new(NOTESFILE)
if(!notesfile) return "<font color='red'>Error: Cannot access [NOTESFILE]</font>"
if(ckey)

View File

@@ -1,4 +1,4 @@
/obj/admins/proc/player_panel_new()//The new one
/datum/admins/proc/player_panel_new()//The new one
if (!usr.client.holder)
return
var/dat = "<html><head><title>Player Panel</title></head>"
@@ -318,7 +318,7 @@
usr << browse(dat, "window=players;size=600x480")
//The old one
/obj/admins/proc/player_panel_old()
/datum/admins/proc/player_panel_old()
if (!usr.client.holder)
return
var/dat = "<html><head><title>Player Menu</title></head>"
@@ -377,7 +377,7 @@
/obj/admins/proc/check_antagonists()
/datum/admins/proc/check_antagonists()
if (ticker && ticker.current_state >= GAME_STATE_PLAYING)
var/dat = "<html><head><title>Round Status</title></head><body><h1><B>Round Status</B></h1>"
dat += "Current Game Mode: <B>[ticker.mode.name]</B><BR>"

View File

@@ -112,7 +112,7 @@
//Other log stuff put here for the sake of organisation
//Shows today's server log
/obj/admins/proc/view_txt_log()
/datum/admins/proc/view_txt_log()
set category = "Admin"
set name = "Show Server Log"
set desc = "Shows today's server log."
@@ -127,7 +127,7 @@
return
//Shows today's attack log
/obj/admins/proc/view_atk_log()
/datum/admins/proc/view_atk_log()
set category = "Admin"
set name = "Show Server Attack Log"
set desc = "Shows today's server attack log."

View File

@@ -1,5 +1,5 @@
var/list/forbidden_varedit_object_types = list(
/obj/admins, //Admins editing their own admin-power object? Yup, sounds like a good idea.
/datum/admins, //Admins editing their own admin-power object? Yup, sounds like a good idea.
/obj/machinery/blackbox_recorder, //Prevents people messing with feedback gathering
/datum/feedback_variable //Prevents people messing with feedback gathering
)

View File

@@ -8,7 +8,7 @@ client/proc/one_click_antag()
return
/obj/admins/proc/one_click_antag()
/datum/admins/proc/one_click_antag()
var/dat = {"<B>One-click Antagonist</B><br>
<a href='?src=\ref[src];makeAntag=1'>Make Tratiors</a><br>
@@ -32,7 +32,7 @@ client/proc/one_click_antag()
return
/obj/admins/proc/makeMalfAImode()
/datum/admins/proc/makeMalfAImode()
var/list/mob/living/silicon/AIs = list()
var/mob/living/silicon/malfAI = null
@@ -53,7 +53,7 @@ client/proc/one_click_antag()
return 0
/obj/admins/proc/makeTratiors()
/datum/admins/proc/makeTratiors()
var/datum/game_mode/traitor/temp = new
if(config.protect_roles_from_antagonist)
@@ -89,7 +89,7 @@ client/proc/one_click_antag()
return 0
/obj/admins/proc/makeChanglings()
/datum/admins/proc/makeChanglings()
var/datum/game_mode/changeling/temp = new
if(config.protect_roles_from_antagonist)
@@ -124,7 +124,7 @@ client/proc/one_click_antag()
return 0
/obj/admins/proc/makeRevs()
/datum/admins/proc/makeRevs()
var/datum/game_mode/revolution/temp = new
if(config.protect_roles_from_antagonist)
@@ -158,7 +158,7 @@ client/proc/one_click_antag()
return 0
/obj/admins/proc/makeWizard()
/datum/admins/proc/makeWizard()
var/list/mob/dead/observer/candidates = list()
var/mob/dead/observer/theghost = null
var/time_passed = world.time
@@ -194,7 +194,7 @@ client/proc/one_click_antag()
return 0
/obj/admins/proc/makeCult()
/datum/admins/proc/makeCult()
var/datum/game_mode/cult/temp = new
if(config.protect_roles_from_antagonist)
@@ -232,7 +232,7 @@ client/proc/one_click_antag()
/obj/admins/proc/makeNukeTeam()
/datum/admins/proc/makeNukeTeam()
var/list/mob/dead/observer/candidates = list()
var/mob/dead/observer/theghost = null
@@ -325,15 +325,15 @@ client/proc/one_click_antag()
/obj/admins/proc/makeAliens()
/datum/admins/proc/makeAliens()
alien_infestation(3)
return 1
/obj/admins/proc/makeSpaceNinja()
/datum/admins/proc/makeSpaceNinja()
space_ninja_arrival()
return 1
/obj/admins/proc/makeDeathsquad()
/datum/admins/proc/makeDeathsquad()
var/list/mob/dead/observer/candidates = list()
var/mob/dead/observer/theghost = null
var/time_passed = world.time
@@ -401,7 +401,7 @@ client/proc/one_click_antag()
return 1
/obj/admins/proc/makeBody(var/mob/dead/observer/G_found) // Uses stripped down and bastardized code from respawn character
/datum/admins/proc/makeBody(var/mob/dead/observer/G_found) // Uses stripped down and bastardized code from respawn character
if(!G_found || !G_found.key) return
//First we spawn a dude.
@@ -423,7 +423,7 @@ client/proc/one_click_antag()
return new_character
/obj/admins/proc/create_syndicate_death_commando(obj/spawn_location, syndicate_leader_selected = 0)
/datum/admins/proc/create_syndicate_death_commando(obj/spawn_location, syndicate_leader_selected = 0)
var/mob/living/carbon/human/new_syndicate_commando = new(spawn_location.loc)
var/syndicate_commando_leader_rank = pick("Lieutenant", "Captain", "Major")
var/syndicate_commando_rank = pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant 1st Class", "Master Sergeant", "Sergeant Major")

View File

@@ -3,7 +3,7 @@
////////////////
//ADMIN THINGS//
////////////////
var/obj/admins/holder = null
var/datum/admins/holder = null
var/buildmode = 0
var/stealth = 0
var/fakekey = null

View File

@@ -98,11 +98,12 @@
world.update_status()
//Admin Authorisation
if( ckey in admins )
holder = new /obj/admins(src)
holder.rank = admins[ckey]
var/datum/admins/Admin_Obj = admins[ckey]
if(istype(Admin_Obj))
admin_list += src
// update_admins(admins[ckey]) //handled by Login
holder = Admin_Obj
holder.owner = src
holder.state = null
..() //calls mob.Login()
@@ -116,11 +117,9 @@
//DISCONNECT//
//////////////
/client/Del()
spawn(0)
if(holder)
admin_list -= src
del(holder)
if(holder)
holder.state = null
admin_list -= src
client_list -= src
return ..()