public void checkLastPlayer(int roomId) { var roomDb = new MonopolyDbContext(); List <ConnectionIds> connections = roomDb.ConnectionIds.Where(x => x.RoomId == roomId).ToList(); List <Room> rooms = roomDb.Rooms.ToList(); if (connections.Count() == 1) { foreach (ConnectionIds connection in connections) { if (connection.RoomId == roomId) { roomDb.Remove(connection); roomDb.SaveChanges(); } } foreach (Room room in rooms) { if (room.RoomId == roomId) { roomDb.Remove(room); roomDb.SaveChanges(); } } } }
public void AddRoom(Room room) { var gameRoomContext = new MonopolyDbContext(); List <Room> rooms = gameRoomContext.Rooms.ToList(); List <ConnectionIds> connections = gameRoomContext.ConnectionIds.ToList(); foreach (Room r in rooms) { if (r.Player1 == room.Player1 || r.Player2 == room.Player1 || r.Player3 == room.Player1 || r.Player4 == room.Player1) { gameRoomContext.Remove(r); gameRoomContext.SaveChanges(); } } foreach (ConnectionIds c in connections) { if (c.PlayerName == room.Player1) { gameRoomContext.Remove(c); gameRoomContext.SaveChanges(); } } gameRoomContext.Rooms.Add(room); gameRoomContext.SaveChanges(); }
public void AddPlayerToRoom(int roomId, string player) { //remove all connections and rooms for this player var gameRoomContext = new MonopolyDbContext(); List <Room> rooms = gameRoomContext.Rooms.ToList(); List <ConnectionIds> connections = gameRoomContext.ConnectionIds.ToList(); foreach (Room r in rooms) { if (r.Player1 == player || r.Player2 == player || r.Player3 == player || r.Player4 == player) { gameRoomContext.Remove(r); gameRoomContext.SaveChanges(); } } foreach (ConnectionIds c in connections) { if (c.PlayerName == player) { gameRoomContext.Remove(c); gameRoomContext.SaveChanges(); } } Room room = gameRoomContext.Rooms.Where(x => x.RoomId == roomId).FirstOrDefault(); if (room != null) { if (room.Player1 == null) { room.Player1 = player; } else if (room.Player2 == null) { room.Player2 = player; } else if (room.Player3 == null) { room.Player3 = player; } else if (room.Player4 == null) { room.Player4 = player; } gameRoomContext.SaveChanges(); } }
public async Task AddRoom(ConnectionIds room) { var connectionIdsContext = new MonopolyDbContext(); connectionIdsContext.ConnectionIds.Add(room); connectionIdsContext.SaveChanges(); }
public void RemovePlayerFromRoom(string player) { var gameRoomContext = new MonopolyDbContext(); Room room = gameRoomContext.Rooms.Where(x => x.Player1 == player || x.Player2 == player || x.Player3 == player || x.Player4 == player).FirstOrDefault(); if (room != null) { if (room.Player1 == player) { room.Player1 = null; } else if (room.Player2 == player) { room.Player2 = null; } else if (room.Player3 == player) { room.Player3 = null; } else if (room.Player4 == player) { room.Player4 = null; } gameRoomContext.SaveChanges(); } }
public void removeConnection(string currentPlayer) { int roomId = 0; var roomDb = new MonopolyDbContext(); ConnectionIds connection = roomDb.ConnectionIds.Where(x => x.PlayerName == currentPlayer).FirstOrDefault(); if (connection != null) { roomId = roomDb.ConnectionIds.Where(x => x.PlayerName == currentPlayer).FirstOrDefault().RoomId; roomDb.Remove(connection); roomDb.SaveChanges(); } checkLastPlayer(roomId); }
public void PlayerLeavesGame(string player) { int roomId = 0; var roomDb = new MonopolyDbContext(); ConnectionIds connection = roomDb.ConnectionIds.Where(x => x.PlayerName == player).FirstOrDefault(); if (connection != null) { roomId = roomDb.ConnectionIds.Where(x => x.PlayerName == player).FirstOrDefault().RoomId; roomDb.Remove(connection); roomDb.SaveChanges(); } Room room = roomDb.Rooms.Where(x => x.Player1 == player || x.Player2 == player || x.Player3 == player || x.Player4 == player).FirstOrDefault(); if (room != null) { if (room.Player1 == player) { room.Player1 = null; } else if (room.Player2 == player) { room.Player2 = null; } else if (room.Player3 == player) { room.Player3 = null; } else if (room.Player4 == player) { room.Player4 = null; } roomDb.SaveChanges(); } }