diff --git a/code/defines/mob/simple_animal/life.dm b/code/defines/mob/simple_animal/life.dm index 11a8db6b1ef8f..011d975fade4f 100644 --- a/code/defines/mob/simple_animal/life.dm +++ b/code/defines/mob/simple_animal/life.dm @@ -39,6 +39,7 @@ var/min_n2 = 0 var/max_n2 = 0 var/unsuitable_atoms_damage = 2 //This damage is taken when atmos doesn't fit all the requirements above. + //Cat /mob/living/simple_animal/cat @@ -66,8 +67,6 @@ response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" - var/turns_since_scan = 0 - var/obj/movement_target //Corgi /mob/living/simple_animal/corgi diff --git a/code/modules/admin/NewBan.dm b/code/modules/admin/NewBan.dm index 6982f98e2e2eb..6409834955bc4 100644 --- a/code/modules/admin/NewBan.dm +++ b/code/modules/admin/NewBan.dm @@ -115,6 +115,7 @@ var/savefile/Banlist log_admin("Ban Expired: [key]") message_admins("Ban Expired: [key]") else + ban_unban_log_save("[key_name_admin(usr)] unbanned [key]") log_admin("[key_name_admin(usr)] unbanned [key]") message_admins("[key_name_admin(usr)] unbanned: [key]") diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 8d7be4bbba591..7818e40366dbe 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -103,6 +103,8 @@ return log_admin("[key_name(usr)] edited [banned_key]'s ban. Reason: [reason] Duration: [GetExp(mins)]") + + ban_unban_log_save("[key_name(usr)] edited [banned_key]'s ban. Reason: [reason] Duration: [GetExp(mins)]") message_admins("\blue [key_name_admin(usr)] edited [banned_key]'s ban. Reason: [reason] Duration: [GetExp(mins)]", 1) Banlist.cd = "/base/[banfolder]" Banlist["reason"] << reason @@ -162,11 +164,13 @@ return if (jobban_isbanned(M, job)) log_admin("[key_name(usr)] unbanned [key_name(M)] from [job]") + ban_unban_log_save("[key_name(usr)] unjobbanned [key_name(M)] from [job]") M << "\redYou have been un-jobbanned by [usr.client.ckey] from [job]." message_admins("\blue [key_name_admin(usr)] unbanned [key_name_admin(M)] from [job]", 1) jobban_unban(M, job) href_list["jobban2"] = 1 else + ban_unban_log_save("[key_name(usr)] jobbanned [key_name(M)] from [job]") log_admin("[key_name(usr)] banned [key_name(M)] from [job]") M << "\redYou have been jobbanned by [usr.client.ckey] from [job]." M << "\red Jooban can be lifted only on demand." @@ -182,6 +186,7 @@ if ((M.client && M.client.holder && (M.client.holder.level >= src.level))) alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null) return + M << "\red You have been kicked from the server" log_admin("[key_name(usr)] booted [key_name(M)].") message_admins("\blue [key_name_admin(usr)] booted [key_name_admin(M)].", 1) //M.client = null @@ -213,6 +218,7 @@ if(!reason) return AddBan(M.ckey, M.computer_id, reason, usr.ckey, 1, mins) + ban_unban_log_save("[usr.client.ckey] has banned [M.ckey]. - Reason: [reason] - This will be removed in [mins] minutes.") M << "\redYou have been banned by [usr.client.ckey].\nReason: [reason]." M << "\red This is a temporary ban, it will be removed in [mins] minutes." if(config.banappeals) @@ -235,6 +241,7 @@ M << "\red To try to resolve this matter head to [config.banappeals]" else M << "\red No ban appeals URL has been set." + ban_unban_log_save("[usr.client.ckey] has permabanned [M.ckey]. - Reason: [reason] - This is a permanent ban.") 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.") @@ -311,6 +318,7 @@ M << "\red To try to resolve this matter head to [config.banappeals]" else M << "\red No ban appeals URL has been set." + ban_unban_log_save("[usr.client.ckey] has jobbanned [M.ckey] from [job]. - Reason: [reason] - This will be removed in [mins] minutes.") log_admin("[usr.client.ckey] has banned [M.ckey] from [job].\nReason: [reason]\nThis will be removed in [mins] minutes.") message_admins("\blue[usr.client.ckey] has banned [M.ckey] from [job].\nReason: [reason]\nThis will be removed in [mins] minutes.") @@ -327,6 +335,7 @@ M << "\red To try to resolve this matter head to [config.banappeals]" else M << "\red No ban appeals URL has been set." + ban_unban_log_save("[usr.client.ckey] has banned [M.ckey] from [job]. - Reason: [reason] - This is a permanent ban.") log_admin("[usr.client.ckey] has banned [M.ckey] from [job].\nReason: [reason]\nThis is a permanent ban.") message_admins("\blue[usr.client.ckey] has banned [M.ckey] from [job].\nReason: [reason]\nThis is a permanent ban.") diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index be7c2b88300a2..1d3967dfa19b7 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -512,6 +512,7 @@ M << "\redYou have been autobanned by [ckey]. This is what we in the biz like to call a \"second warning\"." M << "\red This is a temporary ban; it will automatically be removed in [AUTOBATIME] minutes." log_admin("[ckey] warned [M.ckey], resulting in a [AUTOBATIME] minute autoban.") + ban_unban_log_save("[ckey] warned [M.ckey], resulting in a [AUTOBATIME] minute autoban.") message_admins("\blue [ckey] warned [M.ckey], resulting in a [AUTOBATIME] minute autoban.") del(M.client) diff --git a/code/modules/admin/banjob.dm b/code/modules/admin/banjob.dm index b445ac408d44a..bfae7336d98da 100644 --- a/code/modules/admin/banjob.dm +++ b/code/modules/admin/banjob.dm @@ -35,12 +35,15 @@ var 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/ban_unban_log_save(var/formatted_log) + text2file(formatted_log,"data/ban_unban_log.txt") + + /proc/jobban_updatelegacybans() if(!jobban_runonce) log_admin("Updating jobbanfile!") diff --git a/code/modules/admin/newbanjob.dm b/code/modules/admin/newbanjob.dm index cd30de3fd054b..ee55fd8538520 100644 --- a/code/modules/admin/newbanjob.dm +++ b/code/modules/admin/newbanjob.dm @@ -177,6 +177,7 @@ var/savefile/Banlistjob else log_admin("[key_name_admin(usr)] unjobbanned [key] from [rank]") message_admins("[key_name_admin(usr)] unjobbanned:[key] from [rank]") + ban_unban_log_save("[key_name_admin(usr)] unjobbanned [key] from [rank]") for (var/A in Banlistjob.dir) Banlistjob.cd = "/base/[A]" diff --git a/data/ban_unban_log.txt b/data/ban_unban_log.txt new file mode 100644 index 0000000000000..e69de29bb2d1d