Commit 1863033f authored by Mimeau Corentin's avatar Mimeau Corentin
Browse files

idem

parent 74cd3921
......@@ -8,8 +8,8 @@ from carteStruct import *
from constante import Constante
from base import *
from joueur import *
from tour import *
from unite import *
#ctrl+Q utile pour commenter
......@@ -184,16 +184,35 @@ def ecran_regle (ecran):
if Constante.largeur/2.3 <= x <= Constante.largeur/1.8 and Constante.hauteur/2.6 <= y <= Constante.hauteur/1.6:
return
def maj_affichage_tourelle (ecran, liste, image, verif_tour):
for i in liste : # Parcours la liste comportant la position de l'herbe
if verif_tour == 1 :
if i[0] < 16:
ecran.blit(image, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
elif verif_tour == 2 :
if i[0] >= 16:
ecran.blit(image, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
else :
ecran.blit(image, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
def maj_affichage_tour (ecran, liste_1, liste_2, image_herbe, verif_tour):
if verif_tour == 1 :
for i in liste_1:
i.afficher(ecran)# Met l'image dans le fond
elif verif_tour == 2 :
for i in liste_2 :
i.afficher(ecran) # Met l'image dans le fond
def maj_affichage_unite (ecran, image, liste_1, liste_2, liste_3, verif_tour):
if verif_tour == 3:
for u in liste_3:
for i in liste_1:
if u[0] >= (i.position[0]/Constante.taille_rel)-1 and u[0] <= (i.position[0]/Constante.taille_rel)+1 and u[1] >= (i.position[1]/Constante.taille_rel)-1 and u[1] <= (i.position[1]/Constante.taille_rel)+1:
ecran.blit(image, (u[0]*Constante.taille_rel, u[1]*Constante.taille_rel))
for i in liste_1:
i.avancer(carte)
i.afficher(ecran)# Met l'image dans le fond
for u in liste_3:
for i in liste_2:
if u[0] >= (i.position[0]/Constante.taille_rel)-1 and u[0] <= (i.position[0]/Constante.taille_rel)+1 and u[1] >= (i.position[1]/Constante.taille_rel)-1 and u[1] <= (i.position[1]/Constante.taille_rel)+1:
ecran.blit(image, (u[0]*Constante.taille_rel, u[1]*Constante.taille_rel))
for i in liste_2 :
i.avancer(carte)
i.afficher(ecran) # Met l'image dans le fond
def maj_affichage_argent(ecran, base_joueur, joueur):
argent_joueur = Constante.type_ecriture.render(str(base_joueur.argent)+" euros", True, Constante.ORANGE, (0, 0, 0))
......@@ -206,10 +225,11 @@ def maj_affichage_argent(ecran, base_joueur, joueur):
ecran.blit(argent_joueur, (20*Constante.taille_rel ,17*Constante.taille_rel))
def maj_affichage_liste (ecran, liste, image):
for i in liste:
for i in liste :
ecran.blit(image, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
def verif_pose_tourelle (ecran, carte, (i, j)):
def verif_pose_tour (ecran, carte, (i, j)):
if (i, j) in carte.liste_herbe and (i, j) not in carte.liste_herbe_obstacle and (i, j) not in carte.liste_route:
return True
......@@ -231,7 +251,63 @@ def couvrir_ecran_ennemie (ecran, verif_tour):
draw.rect(ecran, (0, 0, 0), (Constante.largeur/2, 0, Constante.largeur/2, 17*Constante.hauteur/18))
elif verif_tour == 2:
draw.rect(ecran, (0, 0, 0), (0, 0, 15*Constante.largeur/32, 17*Constante.hauteur/18))
def maj_affichage_ecran_principal(ecran, herbe_finale, route_finale, arbre_finale, contour_finale, contour_milieu_soldat_finale, contour_milieu_soldat_finale_2, base_finale, base2_finale, sortie_ennemie_finale, base_1, base_2, j1, j2, verif_tour, verif_base ):
for i in carte.liste_herbe : # Parcours la liste comportant la position de l'herbe
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
for i in carte.liste_route : # Parcours la liste comportant la position de la route
ecran.blit(route_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
for i in carte.liste_arbre : # Parcours la liste comportant la position des arbres
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
ecran.blit(arbre_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
for i in carte.liste_contour :
ecran.blit(contour_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_contour_sortie_ennemie:
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
ecran.blit(contour_milieu_soldat_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_contour_sortie_ennemie_2:
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
ecran.blit(contour_milieu_soldat_finale_2, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_base :
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
if verif_base == 0 :
ecran.blit(base_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
verif_base = verif_base + 1
else :
ecran.blit(base2_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_sortie_ennemie :
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
ecran.blit(sortie_ennemie_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
if verif_tour == 1 :
for i in base_1.liste_tour :
ecran.blit(herbe_finale, (i.position[0]*Constante.taille_rel, i.position[1]*Constante.taille_rel)) # Met l'image dans le fond
i.afficher(ecran)# Met l'image dans le fond
elif verif_tour == 2 :
for i in base_2.liste_tour :
ecran.blit(herbe_finale, (i.position[0]*Constante.taille_rel, i.position[1]*Constante.taille_rel)) # Met l'image dans le fond
i.afficher(ecran) # Met l'image dans le fond
else :
for i in base_1.liste_tour :
i.afficher(ecran)
for i in base_2.liste_tour :
i.afficher(ecran)
couvrir_ecran_ennemie (ecran, verif_tour)
maj_affichage_argent(ecran, base_1, j1)
maj_affichage_argent(ecran, base_2, j2)
def ecran_principal(ecran, j1, j2, verif_tour, base_1, base_2):
son_fond(1) #demarre le son
......@@ -248,8 +324,9 @@ def ecran_principal(ecran, j1, j2, verif_tour, base_1, base_2):
sortie_ennemie_image = image.load("milieu_soldat.png").convert_alpha()
base_image = image.load("base.png").convert_alpha()
base2_image = image.load("base2.png").convert_alpha()
tourelle_1_image = image.load("tourelle_1.png")
choix_case_image = image.load("choix_case.png")
tour_1_image = image.load("tour_1_avec_fond.png")
tour_2_image = image.load("tour_2_avec_fond.png")
contour_milieu_soldat_finale = transform.scale(contour_milieu_soldat_image,(Constante.taille_rel, Constante.taille_rel))
contour_milieu_soldat_finale_2 = transform.scale(contour_milieu_soldat_image_2,(Constante.taille_rel, Constante.taille_rel))
......@@ -260,10 +337,10 @@ def ecran_principal(ecran, j1, j2, verif_tour, base_1, base_2):
base_finale = transform.scale(base_image,(3*Constante.taille_rel, 3*Constante.taille_rel))
base2_finale = transform.scale(base2_image,(3*Constante.taille_rel, 3*Constante.taille_rel))
sortie_ennemie_finale = transform.scale(sortie_ennemie_image,(Constante.taille_rel, Constante.taille_rel))
tourelle_1_choix = transform.scale(tourelle_1_image,(Constante.taille_rel, Constante.taille_rel))
tourelle_1_finale = transform.scale(tourelle_1_image,(Constante.taille_rel, Constante.taille_rel))
choix_case_finale = transform.scale(choix_case_image,(Constante.taille_rel, Constante.taille_rel))
tour_1_finale = transform.scale(tour_1_image, (Constante.taille_rel, Constante.taille_rel))
tour_2_finale = transform.scale(tour_2_image, (Constante.taille_rel, Constante.taille_rel))
if Constante.verif_carte == 0:
global carte
carte = Carte()
......@@ -272,69 +349,28 @@ def ecran_principal(ecran, j1, j2, verif_tour, base_1, base_2):
else :
lecture_carte("dico_carte_ratio_16_9.txt", carte)
for i in carte.liste_herbe : # Parcours la liste comportant la position de l'herbe
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
for i in carte.liste_route : # Parcours la liste comportant la position de la route
ecran.blit(route_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
for i in carte.liste_arbre : # Parcours la liste comportant la position des arbres
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
ecran.blit(arbre_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
for i in carte.liste_contour :
ecran.blit(contour_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_contour_sortie_ennemie:
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
ecran.blit(contour_milieu_soldat_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_contour_sortie_ennemie_2:
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
ecran.blit(contour_milieu_soldat_finale_2, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_base :
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
if verif_base == 0 :
ecran.blit(base_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
verif_base = verif_base + 1
else :
ecran.blit(base2_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_sortie_ennemie :
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
ecran.blit(sortie_ennemie_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel))
for i in carte.liste_tourelle_1 : # Parcours la liste comportant la position de l'herbe
ecran.blit(herbe_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
if verif_tour == 1 :
if i[0] < 16:
ecran.blit(tourelle_1_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
if verif_tour == 2 :
if i[0] >= 16:
ecran.blit(tourelle_1_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
else :
ecran.blit(tourelle_1_finale, (i[0]*Constante.taille_rel, i[1]*Constante.taille_rel)) # Met l'image dans le fond
couvrir_ecran_ennemie (ecran, verif_tour)
texte_joueur = Constante.type_ecriture.render(j1.nom, True, Constante.ORANGE)
texte_joueur2 = Constante.type_ecriture.render(j2.nom, True, Constante.ORANGE)
ecran.blit(texte_joueur, (0, Constante.taille_rel*17))
ecran.blit(texte_joueur2, (28*Constante.taille_rel ,Constante.taille_rel*17))
maj_affichage_argent(ecran, base_1, j1)
maj_affichage_argent(ecran, base_2, j2)
maj_affichage_ecran_principal(ecran, herbe_finale, route_finale, arbre_finale, contour_finale, contour_milieu_soldat_finale, contour_milieu_soldat_finale_2, base_finale, base2_finale, sortie_ennemie_finale, base_1, base_2, j1, j2, verif_tour, verif_base )
Constante.verif_carte = 1
temps_passe = time.time()
temps_depart = time.time()
unite = Unite_feu((Constante.taille_rel*14, Constante.taille_rel*8), 2)
unite_2 = Unite_glace((Constante.taille_rel*16, Constante.taille_rel*8), 1)
base_1.liste_unite.append(unite)
base_2.liste_unite.append(unite_2)
while temps_passe - temps_depart < Constante.temps_tour:
maj_affichage_unite (ecran, route_finale, base_1.liste_unite, base_2.liste_unite, carte.liste_route, verif_tour)
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
......@@ -360,14 +396,14 @@ def ecran_principal(ecran, j1, j2, verif_tour, base_1, base_2):
(u, v) = (x/Constante.taille_rel, y/Constante.taille_rel)
(g, b) = (Constante.position[0]*Constante.taille_rel, Constante.position[1]*Constante.taille_rel)
if (u, v) in carte.liste_tourelle_1:
if (u, v) in carte.liste_tour_1:
if verif_tour == 1:
if Constante.position[0] < 16 :
if verif_pose_tourelle(ecran, carte, (Constante.position[0], Constante.position[1])) == True:
if verif_pose_tour(ecran, carte, (Constante.position[0], Constante.position[1])) == True:
ecran.blit(herbe_finale, (g ,b))
else :
if Constante.position[0] >= 16 :
if verif_pose_tourelle(ecran, carte, (Constante.position[0], Constante.position[1])) == True:
if verif_pose_tour(ecran, carte, (Constante.position[0], Constante.position[1])) == True:
ecran.blit(herbe_finale, (g ,b))
Constante.verif_cadre_rouge = 0
......@@ -377,53 +413,82 @@ def ecran_principal(ecran, j1, j2, verif_tour, base_1, base_2):
if Constante.verif_cadre_rouge == 1:
if Constante.position in carte.liste_tourelle_1:
ecran.blit(tourelle_1_finale, (g ,b))
if Constante.position in carte.liste_tour_1:
ecran.blit(tour_1_finale, (g ,b))
else :
ecran.blit(herbe_finale, (g ,b))
Constante.verif_cadre_rouge = 0
if (u, v) == (18, 3):
if verif_tour == 1:
if verif_pose_tourelle(ecran, carte, Constante.position) == True:
if verif_tour == 1:
if (u, v) == (18, 3):
if verif_pose_tour(ecran, carte, Constante.position) == True:
couvrir_ecran_ennemie (ecran, verif_tour)
if base_1.depenser_argent(10) != "NON":
carte.liste_tourelle_1.append(Constante.position)
carte.liste_tour_1.append(Constante.position)
tour = Tour_feu(Constante.position, verif_tour)
base_1.liste_tour.append(tour)
carte.liste_herbe_obstacle.append(Constante.position)
maj_affichage_tourelle (ecran, carte.liste_tourelle_1, tourelle_1_finale, verif_tour)
maj_affichage_tour (ecran, base_1.liste_tour, base_2.liste_tour, herbe_finale, verif_tour)
maj_affichage_argent(ecran, base_1, j1)
elif (u, v) == (12, 3):
if verif_tour == 2:
if verif_pose_tourelle(ecran, carte, Constante.position) == True:
elif (u, v) == (22, 3):
if verif_pose_tour(ecran, carte, Constante.position) == True:
couvrir_ecran_ennemie (ecran, verif_tour)
if base_1.depenser_argent(20) != "NON":
carte.liste_tour_1.append(Constante.position)
tour = Tour_glace(Constante.position, verif_tour)
base_1.liste_tour.append(tour)
carte.liste_herbe_obstacle.append(Constante.position)
maj_affichage_tour (ecran, base_1.liste_tour, base_2.liste_tour, herbe_finale, verif_tour)
maj_affichage_argent(ecran, base_1, j1)
elif verif_tour == 2:
if (u, v) == (8, 3):
if verif_pose_tour(ecran, carte, Constante.position) == True:
couvrir_ecran_ennemie (ecran, verif_tour)
if base_2.depenser_argent(20) != "NON":
carte.liste_tour_1.append(Constante.position)
tour = Tour_glace(Constante.position, verif_tour)
base_2.liste_tour.append(tour)
carte.liste_herbe_obstacle.append(Constante.position)
maj_affichage_tour (ecran, base_1.liste_tour, base_2.liste_tour, herbe_finale, verif_tour)
maj_affichage_argent(ecran, base_2, j2)
elif (u, v) == (12, 3):
if verif_pose_tour(ecran, carte, Constante.position) == True:
couvrir_ecran_ennemie (ecran, verif_tour)
if base_2.depenser_argent(10) != "NON":
carte.liste_tourelle_1.append(Constante.position)
carte.liste_tour_1.append(Constante.position)
tour = Tour_feu(Constante.position, verif_tour)
base_2.liste_tour.append(tour)
carte.liste_herbe_obstacle.append(Constante.position)
maj_affichage_tourelle (ecran, carte.liste_tourelle_1, tourelle_1_finale, verif_tour)
maj_affichage_tour (ecran, base_1.liste_tour, base_2.liste_tour, herbe_finale, verif_tour)
maj_affichage_argent(ecran, base_2, j2)
for (i, j) in carte.liste_herbe:
if u == i and v == j:
if verif_tour == 1 :
if i < 16:
if verif_pose_tourelle(ecran, carte, (i, j)) == True:
ecran.blit(tourelle_1_choix, (18*Constante.taille_rel, 3*Constante.taille_rel))
if verif_pose_tour(ecran, carte, (i, j)) == True:
ecran.blit(tour_1_finale, (18*Constante.taille_rel, 3*Constante.taille_rel))
ecran.blit(tour_2_finale, (22*Constante.taille_rel, 3*Constante.taille_rel))
ecran.blit(choix_case_finale, (i*Constante.taille_rel, j*Constante.taille_rel))
Constante.verif_cadre_rouge = 1
if verif_tour == 2 :
if i >= 16:
if verif_pose_tourelle(ecran, carte, (i, j)) == True:
ecran.blit(tourelle_1_choix, (12*Constante.taille_rel, 3*Constante.taille_rel))
if verif_pose_tour(ecran, carte, (i, j)) == True:
ecran.blit(tour_1_finale, (12*Constante.taille_rel, 3*Constante.taille_rel))
ecran.blit(tour_2_finale, (8*Constante.taille_rel, 3*Constante.taille_rel))
ecran.blit(choix_case_finale, (i*Constante.taille_rel, j*Constante.taille_rel))
Constante.verif_cadre_rouge = 1
Constante.position = (u , v)
affichage_chronometre (ecran, temps_passe, temps_depart)
display.flip()
temps_passe = time.time()
return
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment