Browse Source

séparation du jeu est des class

master
Mattheo 2 years ago
parent
commit
f4f0518847
  1. 39
      README.txt
  2. 10
      bataille.py
  3. 4
      main.py

39
README.txt

@ -2,23 +2,30 @@ Votre mission, si vous l’acceptez (et même si vous ne l’acceptez pas), est
utilisant une structure de donnée adaptée, et avec une interface graphique. Vous aurez pour cela 6 heures utilisant une structure de donnée adaptée, et avec une interface graphique. Vous aurez pour cela 6 heures
(les trois séances jusqu’aux vacances de Noël). (les trois séances jusqu’aux vacances de Noël).
Plus précisément, on attend au minimum : Plus précisément, on attend au minimum :
• Une classe Carte ayant
– deux attributs valeur et couleur
– une méthode compare qui prend en paramètre une autre carte other, et qui renvoie • Une classe Carte ayant
1 si la valeur de self est supérieure à la valeur de other ; – deux attributs valeur et couleur
−1 si la valeur de other est supérieure à la valeur de self ; – une méthode compare qui prend en paramètre une autre carte other, et qui renvoie: 1 si la valeur de self est supérieure à la valeur de other ;
0 si les deux valeurs sont les mêmes. −1 si la valeur de other est supérieure à la valeur de self ;
• Une classe Jeux ayant 0 si les deux valeurs sont les mêmes.
– Un attribut paquet contenant toutes les cartes du jeux. Le nombre de cartes (32 ou 54) sera un paramètre
du constructeur. Ce paquet sera créé puis mélangé dans le constructeur.
– Une méthode distribue qui renvoie deux Files contenant la moitié des cartes du paquet chacune. On • Une classe Jeux ayant
utilisera la classe File du cours (disponible sur Moodle). – Un attribut paquet contenant toutes les cartes du jeux. Le nombre de cartes (32 ou 52) sera un paramètre du constructeur. Ce paquet sera créé puis mélangé dans le constructeur.
À chaque tour de jeu, chaque joueur joue la carte supérieure de son paquet. Le joueur ayant la carte de plus – Une méthode distribue qui renvoie deux Files contenant la moitié des cartes du paquet chacune. On utilisera la classe File du cours (disponible sur Moodle).
grande valeur récupère les deux cartes et les remets sous son paquet.
En cas d’égalité, chaque joueur ajoute une carte à l’envers, puis une autre carte à l’endroit, et on compare à
nouveau les valeurs. En cas de nouvelle égalité, on réitère le processus. Le gagnant remporte l’ensemble des À chaque tour de jeu, chaque joueur joue la carte supérieure de son paquet. Le joueur ayant la carte de plus grande valeur récupère les deux cartes et les remets sous son paquet.
cartes jouées.
En cas d’égalité, chaque joueur ajoute une carte à l’envers, puis une autre carte à l’endroit, et on compare à nouveau les valeurs. En cas de nouvelle égalité, on réitère le processus.
Le gagnant remporte l’ensemble des cartes jouées.
Si un joueur ne peut plus jouer car il n’a plus de carte, il a perdu la partie. Si un joueur ne peut plus jouer car il n’a plus de carte, il a perdu la partie.
Concernant l’interface graphique, elle sera réalisée en Tkinter, et permettra de faire une partie contre l’or- Concernant l’interface graphique, elle sera réalisée en Tkinter, et permettra de faire une partie contre l’or-
dinateur. Il n’est pas nécessaire d’afficher les cartes à un format graphique (même si ce n’est bien sûr pas dinateur. Il n’est pas nécessaire d’afficher les cartes à un format graphique (même si ce n’est bien sûr pas
interdit) : on pourra se contenter de textes de la forme « 3 de carreau » ou « roi de pique ». interdit) : on pourra se contenter de textes de la forme « 3 de carreau » ou « roi de pique ».

10
bataille.py

@ -1,3 +1,7 @@
import File_lst from File
from random import *
class Carte: class Carte:
def __init__(self, valeur, couleur): def __init__(self, valeur, couleur):
self.valeur = valeur self.valeur = valeur
@ -14,4 +18,10 @@ class Carte:
class Jeux: class Jeux:
def __init__(self, paquet, nbcartes): def __init__(self, paquet, nbcartes):
self.paquet = paquet self.paquet = paquet
class Joueur:
def __init__(self, paquet_joueur, nom):
self.paquet_joueur = paquet_joueur
self.nom = nom

4
main.py

@ -0,0 +1,4 @@
def bataille():
tour = 1
if tour = 1:
tour = 2
Loading…
Cancel
Save