Je fais un jeu OO vingt et un. J'ai une classe Card et une classe Deck, le deck est composé d'objets carte. Quand un joueur montre sa main, j'appelle la méthode to_s sur un objet carte que je représente en caractères ascii. Tout cela fonctionne bien sauf que les joueurs impriment une carte l'une sur l'autre. Je me demandais comment j'allais imprimer toute la main côte à côte. J'ai cherché en ligne et ne trouve rien d'autre que d'utiliser l'impression au lieu des puts, mais cela ne résout pas mon problème. Merci d'avance pour tout conseil que vous pourriez avoir.Comment dessiner des objets de cartes côte à côte vs empilés les uns sur les autres dans le terminal
class Card
attr_reader :value
def initialize(suit, value)
@suit = suit
@value = value
end
def to_s
"""
+-----+
|#{@value} |
| |
| #{@suit} |
| |
| #{@value}|
+-----+
"""
end
end
Exemple de sortie:
Your Hand:
+-----+
|Q |
| |
| C |
| |
| Q|
+-----+
+-----+
|K |
| |
| S |
| |
| K|
+-----+
Your total is 20
Merci, c'était une solution géniale. J'ai pu jouer avec et travailler dans les différents domaines de mon jeu. Appréciez l'aide! – borgy88