From bfa016cb6e43dd18a15e3c0787abff1a73a55877 Mon Sep 17 00:00:00 2001
From: TheSardele <46876120+TheSardele@users.noreply.github.com>
Date: Thu, 19 Mar 2020 18:39:04 +0100
Subject: [PATCH 1/4] Adds confirmation prompt to kicking
---
code/modules/admin/topic.dm | 20 ++++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm
index 60156930408..7f6b0ea9d23 100644
--- a/code/modules/admin/topic.dm
+++ b/code/modules/admin/topic.dm
@@ -902,14 +902,18 @@
else if(href_list["boot2"])
var/mob/M = locateUID(href_list["boot2"])
if(ismob(M))
- if(M.client && M.client.holder && (M.client.holder.rights & R_BAN))
- to_chat(usr, "[key_name_admin(M)] cannot be kicked from the server.")
- return
- to_chat(M, "You have been kicked from the server")
- log_admin("[key_name(usr)] booted [key_name(M)].")
- message_admins("[key_name_admin(usr)] booted [key_name_admin(M)].", 1)
- //M.client = null
- del(M.client)
+ switch(alert("Kick [M.ckey]?",,"Yes","No"))
+ if("Yes")
+ if(M.client && M.client.holder && (M.client.holder.rights & R_BAN))
+ to_chat(usr, "[key_name_admin(M)] cannot be kicked from the server.")
+ return
+ to_chat(M, "You have been kicked from the server")
+ log_admin("[key_name(usr)] booted [key_name(M)].")
+ message_admins("[key_name_admin(usr)] booted [key_name_admin(M)].", 1)
+ //M.client = null
+ del(M.client)
+ else
+ return
//Player Notes
else if(href_list["addnote"])
From 6c5801eb1f021d43551639217232e4ac49b96932 Mon Sep 17 00:00:00 2001
From: TheSardele <46876120+TheSardele@users.noreply.github.com>
Date: Fri, 20 Mar 2020 21:16:36 +0100
Subject: [PATCH 2/4] Use if instead of switch
---
code/modules/admin/topic.dm | 19 ++++++++-----------
1 file changed, 8 insertions(+), 11 deletions(-)
diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm
index 7f6b0ea9d23..c3d32b8b7f4 100644
--- a/code/modules/admin/topic.dm
+++ b/code/modules/admin/topic.dm
@@ -902,18 +902,15 @@
else if(href_list["boot2"])
var/mob/M = locateUID(href_list["boot2"])
if(ismob(M))
- switch(alert("Kick [M.ckey]?",,"Yes","No"))
- if("Yes")
- if(M.client && M.client.holder && (M.client.holder.rights & R_BAN))
- to_chat(usr, "[key_name_admin(M)] cannot be kicked from the server.")
- return
- to_chat(M, "You have been kicked from the server")
- log_admin("[key_name(usr)] booted [key_name(M)].")
- message_admins("[key_name_admin(usr)] booted [key_name_admin(M)].", 1)
- //M.client = null
- del(M.client)
- else
+ if(alert("Kick [M.ckey]?",,"Yes","No") == "Yes")
+ if(M.client && M.client.holder && (M.client.holder.rights & R_BAN))
+ to_chat(usr, "[key_name_admin(M)] cannot be kicked from the server.")
return
+ to_chat(M, "You have been kicked from the server")
+ log_admin("[key_name(usr)] booted [key_name(M)].")
+ message_admins("[key_name_admin(usr)] booted [key_name_admin(M)].", 1)
+ //M.client = null
+ del(M.client)
//Player Notes
else if(href_list["addnote"])
From cd23b41b20ce569ff42d4fbff00a789bdb3b9729 Mon Sep 17 00:00:00 2001
From: TheSardele <46876120+TheSardele@users.noreply.github.com>
Date: Sun, 22 Mar 2020 13:24:06 +0100
Subject: [PATCH 3/4] Makes kicking more client than mob dependent
---
code/modules/admin/topic.dm | 23 +++++++++++++----------
1 file changed, 13 insertions(+), 10 deletions(-)
diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm
index c3d32b8b7f4..7d60535c454 100644
--- a/code/modules/admin/topic.dm
+++ b/code/modules/admin/topic.dm
@@ -901,16 +901,19 @@
else if(href_list["boot2"])
var/mob/M = locateUID(href_list["boot2"])
- if(ismob(M))
- if(alert("Kick [M.ckey]?",,"Yes","No") == "Yes")
- if(M.client && M.client.holder && (M.client.holder.rights & R_BAN))
- to_chat(usr, "[key_name_admin(M)] cannot be kicked from the server.")
- return
- to_chat(M, "You have been kicked from the server")
- log_admin("[key_name(usr)] booted [key_name(M)].")
- message_admins("[key_name_admin(usr)] booted [key_name_admin(M)].", 1)
- //M.client = null
- del(M.client)
+ var/client/C = M.client
+ if(C == null)
+ to_chat(usr, "Mob has no client to kick.")
+ return
+ if(alert("Kick [C.ckey]?",,"Yes","No") == "Yes")
+ if(C && C.holder && (C.holder.rights & R_BAN))
+ to_chat(usr, "[key_name_admin(C)] cannot be kicked from the server.")
+ return
+ to_chat(C, "You have been kicked from the server")
+ log_admin("[key_name(usr)] booted [key_name(C)].")
+ message_admins("[key_name_admin(usr)] booted [key_name_admin(C)].", 1)
+ //C = null
+ del(C)
//Player Notes
else if(href_list["addnote"])
From bd38053b1f4d35b8169f4ce8fb59e03339909f65 Mon Sep 17 00:00:00 2001
From: TheSardele <46876120+TheSardele@users.noreply.github.com>
Date: Tue, 21 Jul 2020 22:27:54 +0200
Subject: [PATCH 4/4] Changed del to qdel
---
code/modules/admin/topic.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm
index c3e34898727..e01b6f3ded3 100644
--- a/code/modules/admin/topic.dm
+++ b/code/modules/admin/topic.dm
@@ -913,7 +913,7 @@
log_admin("[key_name(usr)] booted [key_name(C)].")
message_admins("[key_name_admin(usr)] booted [key_name_admin(C)].", 1)
//C = null
- del(C)
+ qdel(C)
//Player Notes
else if(href_list["addnote"])