diff --git a/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameEntity.java b/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameEntity.java index 0193991..112e9f0 100644 --- a/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameEntity.java +++ b/backend/src/main/java/de/szut/casino/blackjack/BlackJackGameEntity.java @@ -33,8 +33,7 @@ public class BlackJackGameEntity { return user != null ? user.getId() : null; } - @Enumerated(EnumType.STRING) - private BlackJackState state; + private String state; private BigDecimal bet; @OneToMany(mappedBy = "game", cascade = CascadeType.ALL, orphanRemoval = true) diff --git a/backend/src/main/java/de/szut/casino/blackjack/BlackJackService.java b/backend/src/main/java/de/szut/casino/blackjack/BlackJackService.java index 86a159c..44e5858 100644 --- a/backend/src/main/java/de/szut/casino/blackjack/BlackJackService.java +++ b/backend/src/main/java/de/szut/casino/blackjack/BlackJackService.java @@ -5,7 +5,6 @@ import de.szut.casino.user.UserRepository; import org.springframework.stereotype.Service; import java.math.BigDecimal; -import java.util.List; import java.util.Random; @Service @@ -24,6 +23,7 @@ public class BlackJackService { BlackJackGameEntity game = new BlackJackGameEntity(); game.setUser(user); game.setBet(betAmount); + game.setState("IN_PROGRESS"); initializeDeck(game); for (int i = 0; i < 2; i++) { @@ -34,7 +34,6 @@ public class BlackJackService { CardEntity dealerCard = drawCardFromDeck(game); game.getDealerCards().add(dealerCard); - game.setState(getState(game)); user.setBalance(user.getBalance().subtract(betAmount)); userRepository.save(user); @@ -64,32 +63,4 @@ public class BlackJackService { return game.getDeck().removeFirst(); } - - private BlackJackState getState(BlackJackGameEntity game) { - int playerHandValue = calculateHandValue(game.getPlayerCards()); - - if (playerHandValue == 21) { - return BlackJackState.PLAYER_WON; - } - - return BlackJackState.IN_PROGRESS; - } - - public int calculateHandValue(List hand) { - int sum = 0; - int aceCount = 0; - for (CardEntity card : hand) { - sum += card.getRank().getValue(); - if (card.getRank() == Rank.ACE) { - aceCount++; - } - } - - while (sum > 21 && aceCount > 0) { - sum -= 10; - aceCount--; - } - - return sum; - } } diff --git a/backend/src/main/java/de/szut/casino/blackjack/BlackJackState.java b/backend/src/main/java/de/szut/casino/blackjack/BlackJackState.java deleted file mode 100644 index 3c8efa0..0000000 --- a/backend/src/main/java/de/szut/casino/blackjack/BlackJackState.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.szut.casino.blackjack; - -public enum BlackJackState { - PLAYER_WON, - IN_PROGRESS -}