aboutsummaryrefslogtreecommitdiff
path: root/client_conn.go
diff options
context:
space:
mode:
authorHimbeerserverDE <himbeerserverde@gmail.com>2021-08-27 20:40:07 +0200
committerHimbeerserverDE <himbeerserverde@gmail.com>2021-08-27 20:40:07 +0200
commit10fa1679e0a3fef45a327030d52256d4b76749dd (patch)
tree1cabf8866cd683ccfa13bedb0503df6b585f8ffc /client_conn.go
parentb21345fba99d38c5e5ade695e32fc9e23ea48e98 (diff)
Add support for CSM Restriction Flags
Diffstat (limited to 'client_conn.go')
-rw-r--r--client_conn.go31
1 files changed, 31 insertions, 0 deletions
diff --git a/client_conn.go b/client_conn.go
index 000f029..f992ec0 100644
--- a/client_conn.go
+++ b/client_conn.go
@@ -42,6 +42,8 @@ type clientConn struct {
p0Map param0Map
p0SrvMap param0SrvMap
media []mediaFile
+
+ playerCAO, currentCAO mt.AOID
}
func (cc *clientConn) server() *serverConn { return cc.srv }
@@ -345,8 +347,37 @@ func handleClt(cc *clientConn) {
cc.SendCmd(&mt.ToCltAnnounceMedia{Files: files})
cc.lang = cmd.Lang
+
+ var csmrf mt.CSMRestrictionFlags
+ if conf.CSMRF.NoCSMs {
+ csmrf |= mt.NoCSMs
+ }
+ if conf.CSMRF.NoChatMsgs {
+ csmrf |= mt.NoChatMsgs
+ }
+ if conf.CSMRF.NoItemDefs {
+ csmrf |= mt.NoItemDefs
+ }
+ if conf.CSMRF.NoNodeDefs {
+ csmrf |= mt.NoNodeDefs
+ }
+ if conf.CSMRF.LimitMapRange {
+ csmrf |= mt.LimitMapRange
+ }
+ if conf.CSMRF.NoPlayerList {
+ csmrf |= mt.NoPlayerList
+ }
+
+ cc.SendCmd(&mt.ToCltCSMRestrictionFlags{
+ Flags: csmrf,
+ MapRange: conf.MapRange,
+ })
case *mt.ToSrvReqMedia:
cc.sendMedia(cmd.Filenames)
+ case *mt.ToSrvCltReady:
+ cc.log("-->", "ready")
+ cc.state++
+ close(cc.initCh)
}
}
}