aboutsummaryrefslogtreecommitdiff
path: root/server_conn.go
diff options
context:
space:
mode:
authorHimbeerserverDE <himbeerserverde@gmail.com>2021-08-30 22:38:47 +0200
committerHimbeerserverDE <himbeerserverde@gmail.com>2021-08-30 22:38:47 +0200
commit525750e143f6621c142f3119b7a31b3798981c72 (patch)
tree2ff502eb5e1061566265ebb7d9f48ad22d7f7952 /server_conn.go
parent63b65d20c69544b47b0ff8a88b294aa877611e26 (diff)
InvFormspec + MinimapModes + NodeMetasChanged forwarding
Diffstat (limited to 'server_conn.go')
-rw-r--r--server_conn.go50
1 files changed, 13 insertions, 37 deletions
diff --git a/server_conn.go b/server_conn.go
index 5ad47b7..44c6675 100644
--- a/server_conn.go
+++ b/server_conn.go
@@ -5,7 +5,6 @@ import (
"fmt"
"log"
"net"
- "regexp"
"strings"
"time"
@@ -411,46 +410,23 @@ func handleSrv(sc *serverConn) {
delete(sc.huds, cmd.ID)
sc.client().SendCmd(cmd)
case *mt.ToCltShowFormspec:
- reg := regexp.MustCompile("[^a-zA-Z0-9-_.:]")
- reg2 := regexp.MustCompile("[a-zA-Z0-9-_.]*\\.[a-zA-Z0-9-_.]+")
- subs := reg.Split(cmd.Formspec, -1)
- seps := reg.FindAllString(cmd.Formspec, -1)
-
- for i, sub := range subs {
- if reg2.MatchString(sub) && !strings.Contains(sub, " ") {
- prepend(sc.name, &subs[i])
- }
- }
-
- cmd.Formspec = ""
- for i, sub := range subs {
- cmd.Formspec += sub
- if i < len(seps) {
- cmd.Formspec += seps[i]
- }
- }
-
+ sc.prependFormspec(&cmd.Formspec)
sc.client().SendCmd(cmd)
case *mt.ToCltFormspecPrepend:
- reg := regexp.MustCompile("[^a-zA-Z0-9-_.:]")
- reg2 := regexp.MustCompile("[a-zA-Z0-9-_.]*\\.[a-zA-Z0-9-_.]+")
- subs := reg.Split(cmd.Prepend, -1)
- seps := reg.FindAllString(cmd.Prepend, -1)
-
- for i, sub := range subs {
- if reg2.MatchString(sub) && !strings.Contains(sub, " ") {
- prepend(sc.name, &subs[i])
- }
+ sc.prependFormspec(&cmd.Prepend)
+ sc.client().SendCmd(cmd)
+ case *mt.ToCltInvFormspec:
+ sc.prependFormspec(&cmd.Formspec)
+ sc.client().SendCmd(cmd)
+ case *mt.ToCltMinimapModes:
+ for i := range cmd.Modes {
+ prependTexture(sc.name, &cmd.Modes[i].Texture)
}
-
- cmd.Prepend = ""
- for i, sub := range subs {
- cmd.Prepend += sub
- if i < len(seps) {
- cmd.Prepend += seps[i]
- }
+ sc.client().SendCmd(cmd)
+ case *mt.ToCltNodeMetasChanged:
+ for k := range cmd.Changed {
+ sc.prependInv(cmd.Changed[k].Inv)
}
-
sc.client().SendCmd(cmd)
}
}