diff --git a/projet_rush_our/cellules.py b/projet_rush_our/cellules.py index 6daa64c9c7d35179ab76c74bac268873e7dbc79e..fbe48f5b4ddcf6e0a58f265f3baf6a9e891fc240 100644 --- a/projet_rush_our/cellules.py +++ b/projet_rush_our/cellules.py @@ -2,12 +2,13 @@ #mi13 class Cell(): - """ à_remplacer_par_ce_que_fait_la_classe - + """ construction d'une cellule de la grille de jeu et le met a jour + une cellule est caracterisé par ses coordonnes sur le plateau et sa couleur + et caracterisé par le fait d'etre vide ou non Exemple(s) : $$$ """ - def __init__(self,x,y): + def __init__(self,x,y,color): """ à_remplacer_par_ce_que_fait_la_fonction Précondition : @@ -16,7 +17,18 @@ class Cell(): """ self.x = x self.y = y + self.color = color + def est_vide(self)->bool: + """ verifie si une cellule est vide ou pas + + Précondition : + Exemple(s) : + $$$ + """ + return self.color == 'v' + + diff --git a/projet_rush_our/jeu.py b/projet_rush_our/jeu.py new file mode 100644 index 0000000000000000000000000000000000000000..762001f01cdbbf71057169541f370e9ed0773bff --- /dev/null +++ b/projet_rush_our/jeu.py @@ -0,0 +1,17 @@ +from cellules import Cell +from vehicules import Vehicule +from plateau import Plateau +def main(): + vehicules = [] + A = Vehicule(0,0,2,'verti','A') + Z = Vehicule(2,1,2,'verti','Z') + C = Vehicule(4,4,2,'verti','C') + R = Vehicule(5,2,3,'verti','R') + B = Vehicule(4,0,2,'horizo','B') + + vehicules = [A,Z,C,R,B] + plateau = Plateau(vehicules) + plateau.affiche_grille() +if __name__ == "__main__": + main() + diff --git a/projet_rush_our/plateau.py b/projet_rush_our/plateau.py new file mode 100644 index 0000000000000000000000000000000000000000..49112de83163cfb230af9995f315f6526b234cda --- /dev/null +++ b/projet_rush_our/plateau.py @@ -0,0 +1,37 @@ +from cellules import Cell +from vehicules import Vehicule +class Plateau(): + """ à_remplacer_par_ce_que_fait_la_classe + + Exemple(s) : + $$$ + """ + def __init__(self,vehicules:list[Vehicule]): + """ à_remplacer_par_ce_que_fait_la_fonction + + Précondition : + Exemple(s) : + $$$ + """ + self.vehicules = vehicules + self.grille = [[Cell(x,y,'*') for x in range(6)] for y in range(6)] + for vehicule in vehicules: + for cell in vehicule.get_cells(): + self.grille[cell.x][cell.y] = cell + + def affiche_grille(self): + """ à_remplacer_par_ce_que_fait_la_fonction + + Précondition : + Exemple(s) : + $$$ + """ + for i in range(6): + for j in range(6): + cell = self.grille[i][j] + print(cell.color,end = ' ' ) + print('\n') + + + + \ No newline at end of file diff --git a/projet_rush_our/vehicules.py b/projet_rush_our/vehicules.py index 2231568bdd82b60a5a560fa47ed013aa9bc7908f..ef4c96e7f24f1a2ba6fac6833babb6f26bf641bd 100644 --- a/projet_rush_our/vehicules.py +++ b/projet_rush_our/vehicules.py @@ -7,27 +7,38 @@ class Vehicule(): """ à_remplacer_par_ce_que_fait_la_classe Exemple(s) : - $$$ + $$$ """ - def __init__(self,position,taille,direction): + def __init__(self,x_deb,y_deb,taille,orientation,couleur): """ à_remplacer_par_ce_que_fait_la_fonction Précondition : Exemple(s) : - $$$ + $$$ Vehicule() """ - self.position = position + self.x_deb = x_deb + self.y_deb = y_deb self.taille = taille - self.direction = direction - - def deplace_voiture(self): - """ à_remplacer_par_ce_que_fait_la_fonction + self.orientation = orientation + self.couleur = couleur + + + + def get_cells(self)->list[Cell]: + """ modelise les voitures Précondition : Exemple(s) : $$$ """ - for i in range(6): - - + cells = [] + if self.orientation == 'verti': + for i in range(self.taille): + cell = Cell(self.x_deb,self.y_deb + i,self.couleur) + cells.append(cell) + elif self.orientation == 'horizo': + for i in range(self.taille): + cell = Cell(self.x_deb+i,self.y_deb,self.couleur) + cells.append(cell) + return cells \ No newline at end of file