aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHimbeerserverDE <himbeerserverde@gmail.com>2021-09-11 12:11:40 +0200
committerHimbeerserverDE <himbeerserverde@gmail.com>2021-09-11 12:11:40 +0200
commitcfe80dd4974ced579d9a00692712a6312a6a641c (patch)
tree6cd5f23cbe30c6b6795f3e764de7ff91d67aa7bc
parent27d3b809f6309b92e130949c2421964045da320a (diff)
Add ban control commands
-rw-r--r--chatcommands.go39
-rw-r--r--go.mod2
-rw-r--r--go.sum2
3 files changed, 42 insertions, 1 deletions
diff --git a/chatcommands.go b/chatcommands.go
index 7aa25ae..1d4fa20 100644
--- a/chatcommands.go
+++ b/chatcommands.go
@@ -333,6 +333,45 @@ func init() {
return "Player kicked."
},
})
+ proxy.RegisterChatCmd(proxy.ChatCmd{
+ Name: "ban",
+ Perm: "cmd_ban",
+ Help: "Ban a player from using the proxy.",
+ Usage: "ban <name>",
+ Handler: func(cc *proxy.ClientConn, args ...string) string {
+ if len(args) != 1 {
+ return "Usage: ban <name>"
+ }
+
+ clt := proxy.Find(args[0])
+ if clt == nil {
+ return "Player not connected."
+ }
+
+ if err := clt.Ban(); err != nil {
+ return "Could not ban. Error: " + err.Error()
+ }
+
+ return "Player banned."
+ },
+ })
+ proxy.RegisterChatCmd(proxy.ChatCmd{
+ Name: "unban",
+ Perm: "cmd_unban",
+ Help: "Remove a player from the ban list. Accepts addresses and names.",
+ Usage: "unban <name>",
+ Handler: func(cc *proxy.ClientConn, args ...string) string {
+ if len(args) != 1 {
+ return "Usage: unban <name | address>"
+ }
+
+ if err := proxy.Unban(args[0]); err != nil {
+ return "Could not unban. Error: " + err.Error()
+ }
+
+ return "Player unbanned."
+ },
+ })
proxy.RegisterChatCmd(proxy.ChatCmd{
Name: "help",
diff --git a/go.mod b/go.mod
index 63bf08e..c673e3c 100644
--- a/go.mod
+++ b/go.mod
@@ -2,7 +2,7 @@ module github.com/HimbeerserverDE/mt-multiserver-chatcommands
go 1.17
-require github.com/HimbeerserverDE/mt-multiserver-proxy v0.0.0-20210911082559-f46ce4b0028c
+require github.com/HimbeerserverDE/mt-multiserver-proxy v0.0.0-20210911094938-6f2d293f12fb
require (
github.com/HimbeerserverDE/srp v0.0.0-20210331172529-2b5dbec6b82b // indirect
diff --git a/go.sum b/go.sum
index ea66b6f..180d866 100644
--- a/go.sum
+++ b/go.sum
@@ -38,6 +38,8 @@ github.com/HimbeerserverDE/mt-multiserver-proxy v0.0.0-20210911081853-83d208ed95
github.com/HimbeerserverDE/mt-multiserver-proxy v0.0.0-20210911081853-83d208ed9510/go.mod h1:ZzKonpQA3kCRaL9oXnASb1EL3c4kKmqiN2I7WHtDA3Q=
github.com/HimbeerserverDE/mt-multiserver-proxy v0.0.0-20210911082559-f46ce4b0028c h1:abahLdddcGAIN0CY16jbvEPBP0KIKNrC/EFhym+Zj3s=
github.com/HimbeerserverDE/mt-multiserver-proxy v0.0.0-20210911082559-f46ce4b0028c/go.mod h1:ZzKonpQA3kCRaL9oXnASb1EL3c4kKmqiN2I7WHtDA3Q=
+github.com/HimbeerserverDE/mt-multiserver-proxy v0.0.0-20210911094938-6f2d293f12fb h1:N/ixJQ/vd3ySxD7rexT0IZDeW8rYguC9IYqSH5/XABo=
+github.com/HimbeerserverDE/mt-multiserver-proxy v0.0.0-20210911094938-6f2d293f12fb/go.mod h1:ZzKonpQA3kCRaL9oXnASb1EL3c4kKmqiN2I7WHtDA3Q=
github.com/HimbeerserverDE/srp v0.0.0-20210331172529-2b5dbec6b82b h1:xqNC1S76U5U+eFyzr5Ld+8aPOLaDFCw6f1uddjui+h8=
github.com/HimbeerserverDE/srp v0.0.0-20210331172529-2b5dbec6b82b/go.mod h1:pxNH8S2nh4n2DWE0ToX5GnnDr/uEAuaAhJsCpkDLIWw=
github.com/anon55555/mt v0.0.0-20210623155243-152b6697e62c h1:+T4M4zm8QMMnH56jopsKcCBxItSsb6jtulB3ZKFYETU=