diff options
author | HimbeerserverDE <himbeerserverde@gmail.com> | 2021-08-27 20:40:07 +0200 |
---|---|---|
committer | HimbeerserverDE <himbeerserverde@gmail.com> | 2021-08-27 20:40:07 +0200 |
commit | 10fa1679e0a3fef45a327030d52256d4b76749dd (patch) | |
tree | 1cabf8866cd683ccfa13bedb0503df6b585f8ffc /client_conn.go | |
parent | b21345fba99d38c5e5ade695e32fc9e23ea48e98 (diff) |
Add support for CSM Restriction Flags
Diffstat (limited to 'client_conn.go')
-rw-r--r-- | client_conn.go | 31 |
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) } } } |