public void ReceiveAuthorityRequest(Message message)
    {
        if (buffer.NotSyncedAddToBuffer(IsSynced, ReceiveAuthorityRequest, message))
        {
            return;
        }

        using (DarkRiftReader reader = message.GetReader())
        {
            Main.Log($"[CLIENT] < TURNTABLE_AUTH_REQUEST");

            while (reader.Position < reader.Length)
            {
                RequestAuthority authRequest = reader.ReadSerializable <RequestAuthority>();

                TurntableController turntable = turntables.FirstOrDefault(j => j.transform.position == authRequest.Position + WorldMover.currentMove);
                if (turntable)
                {
                    NetworkTurntableSync sync = turntable.GetComponent <NetworkTurntableSync>();
                    sync.IsAnyoneInControlArea = true;
                    sync.playerAuthId          = authRequest.PlayerId;
                }
            }
        }
    }
Пример #2
0
        private void OnTurntableRequestAuth(Message message, IClient client)
        {
            using (DarkRiftReader reader = message.GetReader())
            {
                RequestAuthority info      = reader.ReadSerializable <RequestAuthority>();
                Turntable        turntable = turntableStates.FirstOrDefault(t => t.Position == info.Position);
                if (turntable != null)
                {
                    turntable.playerAuthId = info.PlayerId;
                }
            }

            Logger.Trace("[SERVER] > TURNTABLE_AUTH_REQUEST");
            ReliableSendToOthers(message, client);
        }
Пример #3
0
 /// <summary>
 /// 请求要求(默认允许匿名访问)
 /// </summary>
 /// <param name="_Requirement">默认允许匿名访问</param>
 public RequestRequirementAttribute(RequestAuthority _Requirement = RequestAuthority.AllowAnonymous)
 {
     __Requirement = _Requirement;
 }