diagramme de classes
continuous-integration/drone/push Build is passing Details

master
Céleste BARBOSA 12 months ago
parent 2e1dcef32b
commit 53e4602edb

@ -0,0 +1,107 @@
```plantuml
@startuml
enum Couleur {
ROUGE
VERT
BLEU
JAUNE
NOIR
BLANC
}
enum Indicateur {
BONNEPLACE
BONNECOULEUR
}
class Jeton {
+Jeton(couleur: Couleur)
}
Jeton *--> Couleur: +Couleur: Couleur
class Code {
+Code(tailleCode: int)
+Code(jetons: Jeton?[])
+AjouterJeton(jeton: Jeton): void
+SupprimerDernierJeton(): void
+RecupererJeton(indice: int): void
+Jetons(): Jeton?[]
+EstComplet(): bool
+TailleMaximale(): int
+Comparer(autreCode: Code): Indicateur[]
+NbJetons: int = 0
}
Code o--> Jeton: -lesJeton: Jeton?[]
class Plateau {
-random: Random
-tailleCode: int
+Plateau(tailleCode: int, tailleGrille: int)
+GenererCodeAleatoire(): void
+EstComplet(): bool
+AjouterCode(code: Code): void
+EstBonCode(code: Code): bool
+Grille(): Jeton?[][]
+Indicateurs(): Indicateur[][]
+Victoire: bool = false
+Tour: int = 1
}
Plateau *--> Code: -codeSecret: Code
Plateau *--> Code: -grille: Code?[]
Plateau *--> Indicateur: -indicateurs: Indicateur[][]
class Joueur {
+Joueur(nom: string, plateau: Plateau)
+Nom: string
}
Joueur *--> Plateau: +Plateau: Plateau
interface IRegles {
+AjouterJoueur(joueur: string): void
+JoueurCourant(): Joueur
+PasserLaMain(): void
+GenererCode(): Code
+CommencerLaPartie(): void
+EstTerminee(): bool
+Gagnants(): Joueur[]
+Perdants(): Joueur[]
+Nom: string
+TourMaximum: int
+TailleCodeMaximum: int
+NbJoueurs: int
+NbJoueursMaximum: int
}
class ReglesClassiques {
+nbJoueurs: int = 0
+joueurCourant: int?
+joueurs: Joueur[]
+ReglesClassiques()
+Nom: string = "Règles classiques"
+TourMaximum: int = 12
+TailleCodeMaximum: int = 4
+NbJoueurs: int
+NbJoueursMaximum: int = 2
}
ReglesClassiques ..|> IRegles
@enduml
```
Loading…
Cancel
Save