# Gère l'affichage et les saisies dans le terminal. class TerminalUI # Demande au joueur de choisir une carte et la retourne. def choose_card(player) player.hand.each_with_index do |card, index| puts "#{index + 1}. #{card}" end print "Choose a card: " choice = gets.chomp.to_i until choice.between?(1, player.hand.length) print "Invalid choice. Choose a card: " choice = gets.chomp.to_i end player.hand[choice - 1] end # Affiche la couleur d'atout. def display_trump(trump_suit) puts "Trump suit: #{trump_suit}" end # Affiche un avertissement si le coup joué ne respecte pas les règles. def display_wrong_card puts "You cannot play this card." end # Affiche le joueur ayant remporté le pli. def display_trick_winner(player) puts "#{player.name} wins the trick." puts end # Affiche les informations de débogage. def debug_game(game) puts "Dealer: #{game.dealer.name}" puts "Non-dealer: #{game.non_dealer.name}" puts puts "#{game.player1.name} has:" puts game.player1.hand puts puts "#{game.player2.name} has:" puts game.player2.hand puts puts "Upcard: #{game.upcard}" puts "Trump suit: #{game.trump_suit}" puts puts "Stock:" puts game.stock.length puts end end