diff --git a/src/main/java/cz/muni/fi/pa165/icehockeymanager/facades/LeagueManagerFacade.java b/src/main/java/cz/muni/fi/pa165/icehockeymanager/facades/LeagueManagerFacade.java
index f175d8d92f1b2af4a81336d5b7da1f973829e8a4..c74c1e53562656fae12cd74cb2bd42089fc42643 100644
--- a/src/main/java/cz/muni/fi/pa165/icehockeymanager/facades/LeagueManagerFacade.java
+++ b/src/main/java/cz/muni/fi/pa165/icehockeymanager/facades/LeagueManagerFacade.java
@@ -9,7 +9,7 @@ public interface LeagueManagerFacade {
 
     void dropGame(long gameId);
 
-    void updateGameScore(int homeTeamScore, int awayTeamScore);
+    void updateGameScore(long gameId, int homeTeamScore, int awayTeamScore);
 
     void setGameWinner(long gameId, long teamId);
 
diff --git a/src/main/java/cz/muni/fi/pa165/icehockeymanager/facades/LeagueManagerFacadeImpl.java b/src/main/java/cz/muni/fi/pa165/icehockeymanager/facades/LeagueManagerFacadeImpl.java
index 5f145024c06e5dca707e2656316c66a706bc4dcd..8944023e3cd8337504f535ebf0593809938e8e8a 100644
--- a/src/main/java/cz/muni/fi/pa165/icehockeymanager/facades/LeagueManagerFacadeImpl.java
+++ b/src/main/java/cz/muni/fi/pa165/icehockeymanager/facades/LeagueManagerFacadeImpl.java
@@ -3,7 +3,9 @@ package cz.muni.fi.pa165.icehockeymanager.facades;
 import cz.muni.fi.pa165.icehockeymanager.dto.GameCreateDTO;
 import cz.muni.fi.pa165.icehockeymanager.dto.TeamCreateDTO;
 import cz.muni.fi.pa165.icehockeymanager.exceptions.UnknownGameException;
+import cz.muni.fi.pa165.icehockeymanager.exceptions.UnknownTeamException;
 import cz.muni.fi.pa165.icehockeymanager.model.Game;
+import cz.muni.fi.pa165.icehockeymanager.model.Team;
 import cz.muni.fi.pa165.icehockeymanager.services.BeanMappingService;
 import cz.muni.fi.pa165.icehockeymanager.services.GameService;
 import cz.muni.fi.pa165.icehockeymanager.services.PlayerService;
@@ -42,13 +44,21 @@ public class LeagueManagerFacadeImpl implements LeagueManagerFacade {
     }
 
     @Override
-    public void updateGameScore(int homeTeamScore, int awayTeamScore) {
-
+    public void updateGameScore(long gameId, int homeTeamScore, int awayTeamScore) {
+        Game game = gameService.findGame(gameId).orElseThrow(
+                () -> new UnknownGameException("Game not found")
+        );
+        gameService.updateGameScore(game, homeTeamScore, awayTeamScore);
     }
 
     @Override
     public void setGameWinner(long gameId, long teamId) {
-
+        Game game = gameService.findGame(gameId).orElseThrow(
+                () -> new UnknownGameException("Game not found")
+        );
+        Team team = teamService.getTeam(teamId).orElseThrow(
+                () -> new UnknownTeamException("Team not found")
+        );
     }
 
     @Override
diff --git a/src/main/java/cz/muni/fi/pa165/icehockeymanager/services/GameService.java b/src/main/java/cz/muni/fi/pa165/icehockeymanager/services/GameService.java
index f0084dddc11f4c74d5dd95fa2302fdcf2c9495eb..778986fc836db0bac7ae652ea14d751d30b954c5 100644
--- a/src/main/java/cz/muni/fi/pa165/icehockeymanager/services/GameService.java
+++ b/src/main/java/cz/muni/fi/pa165/icehockeymanager/services/GameService.java
@@ -22,4 +22,6 @@ public interface GameService {
     Optional<Game> findGame(long gameId);
 
     void deleteGame(Game game);
+
+    void updateGameScore(Game game, int homeTeamScore, int awayTeamScore);
 }
diff --git a/src/main/java/cz/muni/fi/pa165/icehockeymanager/services/GameServiceImpl.java b/src/main/java/cz/muni/fi/pa165/icehockeymanager/services/GameServiceImpl.java
index 76b56da78c31afbb4e5d0f80801032880821486b..680bf0733f5635d48b707f97f1cde06addc6b654 100644
--- a/src/main/java/cz/muni/fi/pa165/icehockeymanager/services/GameServiceImpl.java
+++ b/src/main/java/cz/muni/fi/pa165/icehockeymanager/services/GameServiceImpl.java
@@ -39,4 +39,18 @@ public class GameServiceImpl implements GameService {
     public void deleteGame(Game game) {
         gameDao.delete(game);
     }
+
+    @Override
+    public void updateGameScore(Game game, int homeTeamScore, int awayTeamScore) {
+        game.setHomeTeamScore(homeTeamScore);
+        game.setAwayTeamScore(awayTeamScore);
+        if (homeTeamScore > awayTeamScore) {
+            game.setWinner(game.getHomeTeam());
+        } else if (awayTeamScore > homeTeamScore) {
+            game.setWinner(game.getAwayTeam());
+        } else {
+            game.setWinner(null);
+        }
+        gameDao.update(game);
+    }
 }