Ejemplo n.º 1
0
        private async Task OnUserConnectedAsync(UserConnectedEvent eventdata)
        {
            await Task.Delay(1000);

            this.logger.LogInformation("{Username} CONNECTED", eventdata.Username);

            throw new Exception("ERROR");
        }
Ejemplo n.º 2
0
        protected virtual void OnPlayerConnected(SteamPlayer player)
        {
            AsyncHelper.RunSync(() =>
            {
                var pending = m_PendingUsers.First(d => d.SteamId == player.playerID.steamID);
                FinishSession(pending);

                var user = new UnturnedUser(m_UserDataStore, player.player, pending);
                m_UnturnedUsers.Add(user);

                var connectedEvent = new UserConnectedEvent(user);
                return(m_EventBus.EmitAsync(m_Runtime, this, connectedEvent));
            });
        }
Ejemplo n.º 3
0
        public void ReceiveMessage(TextMessage textTextMessage)
        {
            switch (textTextMessage.Type)
            {
            case MessageType.TextMessage:
                TextMessageIncomeEvent?.Invoke(textTextMessage);
                break;

            case MessageType.ConnectMessage:
                if (textTextMessage.SenderNick != Nick)
                {
                    UserConnectedEvent?.Invoke(textTextMessage.SenderNick);
                    _chatChannel.SendMessage(textTextMessage.SenderNick,
                                             new TextMessage()
                    {
                        SenderNick = Nick, Type = MessageType.LoadMessage
                    });
                }

                break;

            case MessageType.LoadMessage:
                UserConnectedEvent?.Invoke(textTextMessage.SenderNick);
                break;

            case MessageType.DisconnectMessage:
                if (textTextMessage.SenderNick != Nick)
                {
                    UserDisconnectedEvent?.Invoke(textTextMessage.SenderNick);
                }
                break;

            case MessageType.PlayerStartedMessage:
                if (textTextMessage.SenderNick != Nick)
                {
                    PlayerStartedEvent?.Invoke(textTextMessage.SenderNick);
                }
                break;

            case MessageType.PlayerFinishedMessage:
                if (textTextMessage.SenderNick != Nick)
                {
                    PlayerFinishedEvent?.Invoke(textTextMessage.SenderNick);
                }
                break;
            }
        }
Ejemplo n.º 4
0
        // todo: memory leak, m_PendingUsers does not get cleared up when pending user gets rejected
        // Unturned does not have an event for handling rejections yet.


        protected virtual void OnPlayerConnected(SteamPlayer player)
        {
            AsyncHelper.RunSync(async() =>
            {
                var pending = m_PendingUsers.First(d => d.SteamId == player.playerID.steamID);
                FinishSession(pending);

                var user = new UnturnedUser(player.player, pending)
                {
                    SessionStartTime = DateTime.Now,
                };

                m_UnturnedUsers.Add(user);

                var connectedEvent = new UserConnectedEvent(user);
                await m_EventBus.EmitAsync(m_Runtime, this, connectedEvent);
            });
        }
Ejemplo n.º 5
0
        protected virtual void OnPlayerConnected(SteamPlayer player)
        {
            if (m_UnturnedUsers.Any(d => d.SteamPlayer.Equals(player)))
            {
                return;
            }

            var pending = m_PendingUsers.FirstOrDefault(d => d.SteamId == player.playerID.steamID);

            if (pending != null)
            {
                FinishSession(pending);
            }

            var user = new UnturnedUser(m_UserDataStore, player.player, pending);

            m_UnturnedUsers.Add(user);

            var connectedEvent = new UserConnectedEvent(user);

            AsyncHelper.RunSync(() => m_EventBus.EmitAsync(m_Runtime, this, connectedEvent));
        }
Ejemplo n.º 6
0
 private void OnUserConnected(UserConnectedEvent eventData)
 {
     this.logger.LogInformation("User \"{Username}\" connected", eventData.Username);
 }