public void LeaveChat(string playerToken) { PreCondition.AssertNotNullOrEmpty(playerToken, "playerToken"); var chat = GetAndCheckChat(playerToken); chat.RemovePlayer(playerToken); }
public void WriteLine(string playerToken, string text) { PreCondition.AssertNotNullOrEmpty(playerToken, "playerToken"); PreCondition.AssertNotNullOrEmpty(text, "text"); var chat = GetAndCheckChat(playerToken); chat.AddLine(playerToken, text); }
public void JoinChat(string playerToken, string chatId, string userName) { PreCondition.AssertNotNullOrEmpty(playerToken, "playerToken"); PreCondition.AssertNotNullOrEmpty(chatId, "chatId"); PreCondition.AssertNotNullOrEmpty(userName, "userName"); SetName(playerToken, userName); GetChat(chatId).AddPlayer(GetPlayer(playerToken)); }
public List <ChatLine> GetLinesFrom(string playerToken) { PreCondition.AssertNotNullOrEmpty(playerToken, "playerToken"); var chat = GetAndCheckChat(playerToken); var player = chat.GetPlayer(playerToken); var list = chat.ChatLines.Where(x => x.Tick > player.Tick).ToList(); player.Tick = chat.ChatLines.Last().Tick; return(list); }
public string CreatePlayer(string playername, string password) { PreCondition.AssertNotNullOrEmpty(playername, "playername"); PreCondition.AssertNotNullOrEmpty(password, "password"); var player = RegisteredPlayers.FirstOrDefault(x => x.PlayerName == playername); if (player == null) { player = new Player(playername, password, Guid.NewGuid().ToString()); RegisteredPlayers.Add(player); } return(player.Id); }
public string CreateChannel(string playerToken, string channelName) { PreCondition.AssertNotNullOrEmpty(channelName, "channelName"); PreCondition.AssertNotNullOrEmpty(playerToken, "playerToken"); CheckPlayerToken(playerToken); var chat = ChatLobby.FirstOrDefault(x => x.Name == channelName);; if (chat == null) { chat = new Chat(channelName); ChatLobby.Add(chat); } return(chat.Id); }
public Chat GetChat(string chatId) { PreCondition.AssertNotNullOrEmpty(chatId, "chatId"); return(ChatLobby.First(x => x.Id == chatId)); }
public List <Player> GetPlayers(string chatId) { PreCondition.AssertNotNullOrEmpty(chatId, "chatId"); return(GetChat(chatId).Players); }