XL 2019 Aide Canasta

dodoy

XLDnaute Nouveau
Bonjour tout le monde,
Afin de me remettre à la programmation en douceur, j'envisage de faire un classeur Excel d'aide au jeu de cartes Canasta, et plus particulièrement sa variante en tête à tête
Pour faire simple, la canasta est un jeu qui se joue avec 2 jeux de 54 cartes, le but étant de faire des séries de 7 cartes de même valeur, avec ou sans Joker.
J'aimerais, dans un premier temps, faire un suivi de main.
Explication :
Il y a six "zones" dans la canasta :
- La main du Joueur 1
- La main du Joueur 2
- Le tapis du Joueur 1 (où il posera ses combinaisons de cartes)
- Le tapis du Joueur 2
- La pioche
- La défausse

3 zones, par définition, sont connues du Joueur 1 :
- La main du Joueur 1
- Le tapis du Joueur 1
- La défausse

Cependant, lorsqu'il possède les cartes nécessaires, les 2 joueurs peuvent prendre la défausse, qui passe alors dans leur main

Le but de ce que je désire faire est donc le suivant :
- Saisie de la main initiale du Joueur 1
- Saisie des pioches du Joueur 1 (la pioche est variable, 2 cartes en général, parfois plus)
- Saisie du nombre de pioches du Joueur 2 (pour avoir le suivi du nombre de cartes inconnues dans sa main)
- Saisie des déposes tapis du Joueur 1
- Saisie des déposes tapis du Joueur 2
- Saisie des cartes défaussées par les 2 joueurs.

Mon but étant, à chaque instant, de pouvoir consulter :
- Ma main
- Mon tapis
- Le tapis du Joueur 2
- Les cartes contenues dans la défausse
- Les cartes connues dans la main de l'adversaire (au cas où il se serait emparé de une ou plusieurs défausses)

Donc, cela donnerait ça :
- Début de partie : Saisie des cartes du joueur 1 et de la première carte de la défausse
- A chaque tour, chaque joueur pioche 2 cartes, et à chaque fois qu'il dépose un 3 rouge, une carte supplémentaire : saisie des valeurs des cartes de la pioche pour le joueur 1, et augmentation du nombre de cartes de la main du joueur 2.
- A chaque fin de tour, une carte est défaussée : saisie de la carte défaussée
- Les joueurs peuvent s'emparer de la défausse : les cartes listées dans la défausse passent dans la main du joueur qui s'en empare.
- Quand il le désire et qu'il a le nombre de points minimum nécessaire, chaque joueur peur poser des combinaisons de cartes sur le tapis : saisie des cartes pour le joueur 1. Pour le joueur 2, à chaque carte saisie, vérifier s'il s'agit d'une carte dont il s'est emparée dans une défausse, ou si c'était une carte inconnue. Exemple : le joueur 2 pose 3 As, un de pique, et deux de coeur. On sait qu'il a eu un as de pique et deux as de trèfle dans une défausse. On en conclut donc que les as de coeur étaient des cartes qu'il avait dès le départ ou qu'il a piochées, et que l'as de pique est probablement celui de la défausse (il peut aussi en avoir un pioché ou depuis le départ). Le plus important pour le jeu étant qu'il lui en reste au moins 2 en main (les deux de trèfle qui viennent d'une défausse).

Mes explications ne sont peut être pas très claires, je vous fournirai toutes celles qu'il vous faudra.

Donc voici plusieurs pistes de réflexion :
- Pour la méthode de saisie, il faut qu'elle soit rapide. Je pensais à une série de 3 colonnes de boutons
- Une pour la valeur (de As à Roi)
Pour la valeur de la carte, je ne sais pas comment gérer les Joker (2 par jeu de 54 cartes, soit 4)
- Une pour la couleur (Pique Coeur Carreau Trèfle)
- Une pour l'action (Main Joueur 1, Défausse, Tapis Joueur 1, Tapis Joueur 2, Joueur 1 prend défausse, Joueur 2 prend défausse)
- Un bouton nouvelle partie
- Une seconde page de classeur ou je peux voir les états suivants :
- Main Joueur 1
- Tapis Joueur 1
- Main Joueur 2 (les cartes issues des défausses et une indication du genre "x cartes inconnues")
- Tapis Joueur 2
- Contenu de la défausse
Pour l'état, la couleur de la carte importe peu, la valeur est importante
Exemple : je voudrais qu'il m'indique '3 cartes de valeur 6' plutot que 'un six de coeur et deux six de trèfle'

Le but étant surtout de comprendre le langage de programmation, mais je ne sais pas par où commencer, j'avoue...

Merci d'avance à tous ceux qui m'aideront !
 

Discussions similaires

Réponses
17
Affichages
486

Statistiques des forums

Discussions
311 720
Messages
2 081 913
Membres
101 837
dernier inscrit
Ugo