Commit 1d929b46 authored by BRULE's avatar BRULE
Browse files

Nouvelles textures

parent e06d0e31
# -*- encoding: utf-8 -*-
from pygame import *
import time
display.init() # Initialise la fenêtre graphique
ORANGE = 255, 100, 0 # Définition d'une couleur utilisé par la suite
info = display.Info() # Récupère des informations sur l'écran
largeur = info.current_w # Récupère la largeur de l'écran
hauteur = info.current_h # Récupère la hauteur de l'écran
def lecture_carte (carte): # Permet de lire le .txt contenant la carte
global herbe
global route
global arbre
global contour
global base
global sortie_ennemie
liste_herbe = []
liste_route = []
liste_arbre = []
liste_contour = []
liste_base = []
liste_sortie_ennemie = []
ouverture_dico = open(carte, "r")
numLigne = 0
for ligne in ouverture_dico :
numColonne = 0
for trouve_lettre in ligne :
if trouve_lettre == "X":
liste_herbe.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "O":
liste_route.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "A":
liste_herbe.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
liste_arbre.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "C":
liste_contour.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "B":
liste_herbe.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
liste_base.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "S":
liste_herbe.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
liste_sortie_ennemie.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
numColonne = numColonne + 1
numLigne = numLigne + 1
ouverture_dico.close()
herbe = liste_herbe
route = liste_route
arbre = liste_arbre
contour = liste_contour
base = liste_base
sortie_ennemie = liste_sortie_ennemie
def sim_nom(verif, ecran):
font.init()
titre = "Rentrer le nom du joueur" + " " + str(verif)
type_ecriture = font.SysFont('Hungry Snake', 36)
texte_titre = type_ecriture.render(titre, True, ORANGE)
ecran.blit(texte_titre, (largeur/4, hauteur/4))
display.flip()
def nom_joueur (verif):
display.init()
conti = 1
if verif == 1 :
global nom
nom = ''
elif verif == 2 :
global nom_2
nom_2 = ''
ecran_joueur = display.set_mode((largeur, hauteur), FULLSCREEN)
sim_nom(verif, ecran_joueur)
while conti:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.unicode.isalpha():
font.init()
if verif == 1 :
nom = nom + evenement_joueur.unicode
type_ecriture = font.SysFont('Hungry Snake', 36)
texte = type_ecriture.render(nom, True, ORANGE)
ecran_joueur.blit(texte, (largeur/2, hauteur/2))
elif verif == 2 :
nom_2 = nom_2 + evenement_joueur.unicode
type_ecriture = font.SysFont('Hungry Snake', 36)
texte = type_ecriture.render(nom_2, True, ORANGE)
ecran_joueur.blit(texte, (largeur/2, hauteur/2))
display.flip()
if evenement_joueur.key == K_RETURN:
if verif == 2 :
conti = 0
ecran_accueil()
else :
conti = 0
nom_joueur(2)
if evenement_joueur.key == K_BACKSPACE:
font.init()
if verif == 1:
nom = nom[:-1]
type_ecriture = font.SysFont('Hungry Snake', 36)
texte = type_ecriture.render(nom, True, ORANGE)
elif verif == 2:
nom_2 = nom_2[:-1]
type_ecriture = font.SysFont('Hungry Snake', 36)
texte = type_ecriture.render(nom_2, True, ORANGE)
ecran_joueur = display.set_mode((largeur, hauteur), FULLSCREEN)
sim_nom(verif, ecran_joueur)
ecran_joueur.blit(texte, (largeur/2, hauteur/2))
display.flip()
def ecran_accueil ():
conti = 1
display.init() # Initialise la fenêtre graphique
ecran_accueil = display.set_mode((largeur, hauteur), FULLSCREEN)
accueil = image.load("accueil.jpg")
bouton_jouer = image.load("bouton_jouer.png")
bouton_regle = image.load("bouton_regle.png")
accueil = transform.scale(accueil,(largeur, hauteur))
bouton_jouer = transform.scale(bouton_jouer,(hauteur/5, hauteur/5))
bouton_regle = transform.scale(bouton_regle,(hauteur/3, hauteur/3))
ecran_accueil.blit(accueil, (0, 0))
ecran_accueil.blit(bouton_jouer, (hauteur/5, hauteur/5))
ecran_accueil.blit(bouton_regle, (6*hauteur/5, 3*hauteur/5))
display.flip()
while conti:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.key == K_SPACE:
conti = 0
ecran_principal()
if evenement_joueur.type == MOUSEBUTTONDOWN :
x, y = evenement_joueur.pos
if hauteur/5 <= x <= (2*hauteur)/5 and hauteur/5 <= y <= (2*hauteur)/5:
conti = 0
ecran_principal()
elif 6*hauteur/5 <= x <= (23*hauteur)/15 and 3*hauteur/5 <= y <= (14*hauteur)/15:
conti = 0
ecran_regle()
def ecran_regle ():
conti = 1
display.init()
ecran_regle = display.set_mode((largeur, hauteur), FULLSCREEN)
fond_regle = image.load("ecran_regle.jpg")
fond_regle = transform.scale(fond_regle,(largeur, hauteur))
ecran_regle.blit(fond_regle, (0, 0))
display.flip()
while conti:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.key == K_SPACE:
conti = 0
ecran_principal()
if evenement_joueur.type == MOUSEBUTTONDOWN :
x, y = evenement_joueur.pos
if largeur/2.3 <= x <= largeur/1.8 and hauteur/2.6 <= y <= hauteur/1.6:
conti = 0
ecran_accueil()
def ecran_principal ():
continuer = 1
verif_base = 0
ORANGE = 255, 100, 0
display.init() # Initialise la fenêtre graphique
font.init()
fond = display.set_mode((largeur, hauteur), FULLSCREEN) # Definis la taille de l'écran de fond en fonction de l'écran du joueur
terre_image = image.load("herbe.png") # Charge l'image de la pelouse
route_image = image.load("route.png")# Charge l'image de la route
arbre_image = image.load("arbre.png").convert_alpha() # Charge l'image des arbres
contour_image = image.load("contour.png")
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()
terre_finale = transform.scale(terre_image,((61*largeur)/1920, (61*largeur)/1920))
route_finale = transform.scale(route_image,((61*largeur)/1920, (61*largeur)/1920))
arbre_finale = transform.scale(arbre_image,(2*((61*largeur)/1920), 2*((61*largeur)/1920)))
contour_finale = transform.scale(contour_image,((61*largeur)/1920, (61*largeur)/1920))
base_finale = transform.scale(base_image,(3*((60*largeur)/1920), 3*((60*largeur)/1920)))
base2_finale = transform.scale(base2_image,(3*((60*largeur)/1920), 3*((60*largeur)/1920)))
sortie_ennemie_finale = transform.scale(sortie_ennemie_image,((61*largeur)/1920, (61*largeur)/1920))
lecture_carte("dico_carte.txt") # Lis le dictionnaire contenant la carte
for i in herbe : # Parcours la liste comportant la position de l'herbe
fond.blit(terre_finale, i) # Met l'image dans le fond
for v in route : # Parcours la liste comportant la position de la route
fond.blit(route_finale, v) # Met l'image dans le fond
for p in arbre : # Parcours la liste comportant la position des arbres
fond.blit(arbre_finale, p) # Met l'image dans le fond
for c in contour :
fond.blit(contour_finale, c)
for b in base :
if verif_base == 0 :
fond.blit(base_finale, b)
verif_base = verif_base + 1
else :
fond.blit(base2_finale, b)
for s in sortie_ennemie :
fond.blit(sortie_ennemie_finale, s)
type_ecriture = font.SysFont('Hungry Snake', 50)
texte_joueur = type_ecriture.render(nom, True, ORANGE)
texte_joueur2 = type_ecriture.render(nom_2, True, ORANGE)
fond.blit(texte_joueur, ((60*largeur)/1920, ((60*largeur)/1920)))
fond.blit(texte_joueur2, (largeur - largeur/8, hauteur - hauteur/8))
display.flip() # Fais apparaître les différents éléments chargés
while continuer:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.key == K_SPACE:
continuer = 0
nom_joueur(1)
# -*- encoding: utf-8 -*-
from pygame import *
import time
import os
os.chdir("C:\Users\Quiesan\Desktop\Projet\outil_pour_jeu")
#Jeu Fonctionne que sur un ratio 16:9
#ctrl+Q utile pour commenter
#Mettre le son en pause et le ratrraper après
display.init() # Initialise la fenêtre graphique
ORANGE = 204, 102, 51 # Définition d'une couleur utilisée par la suite
info = display.Info() # Récupère des informations sur l'écran
largeur = info.current_w # Récupère la largeur de l'écran
hauteur = info.current_h # Récupère la hauteur de l'écran
font.init() #Initialise la police
type_ecriture = font.SysFont('Bauhaus 93', 64) # Définition d'une police d'écriture
type_ecriture_titre = font.SysFont('Bauhaus 93', 64, False, True)
def son_fond(verif):
mixer.init()
son_fond = mixer.Sound("nyan_cat.wav")
if verif == 1:
son_fond.play()
son_fond.set_volume(1.0)
elif verif == 2:
mixer.pause()
elif verif == 3:
mixer.unpause()
def fond_depart(ecran):
image_depart = image.load("ecran_depart.jpg")
image_depart = transform.scale(image_depart,(largeur, hauteur))
ecran.blit(image_depart, (0 ,0))
def saut_ligne(texte, ecran):
bulle = Rect(largeur/5, hauteur/4, 500,500)
x,y = bulle.topleft
for ligne in texte.splitlines():
x,y = ecran.blit(type_ecriture_titre.render(ligne , 1, ORANGE),(x,y)).bottomleft
def ecran_depart():
continuer = 1
ecran_depart = display.set_mode((largeur, hauteur), FULLSCREEN)
fond_depart(ecran_depart)
titre_jeu = """ Bienvenue dans \n\n POLYDENFENSE \n\n\nAppuyez sur "Entrer" pour commencer le Jeu"""
saut_ligne(titre_jeu, ecran_depart)
display.flip()
while continuer:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.key == K_RETURN:
continuer = 0
nom_joueur(1)
def lecture_carte (carte): # Permet de lire le .txt contenant la carte
global herbe
global route
global arbre
global contour
global base
global sortie_ennemie
liste_herbe = []
liste_route = []
liste_arbre = []
liste_contour = []
liste_base = []
liste_sortie_ennemie = []
ouverture_dico = open(carte, "r")
numLigne = 0
for ligne in ouverture_dico :
numColonne = 0
for trouve_lettre in ligne :
if trouve_lettre == "X":
liste_herbe.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "O":
liste_route.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "A":
liste_herbe.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
liste_arbre.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "C":
liste_contour.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "B":
liste_herbe.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
liste_base.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
if trouve_lettre == "S":
liste_herbe.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
liste_sortie_ennemie.append ((numColonne*((60*largeur)/1920), numLigne*((60*largeur)/1920)))
numColonne = numColonne + 1
numLigne = numLigne + 1
ouverture_dico.close()
herbe = liste_herbe
route = liste_route
arbre = liste_arbre
contour = liste_contour
base = liste_base
sortie_ennemie = liste_sortie_ennemie
def sim_nom(verif, ecran):
titre = "Rentrer le nom du joueur" + " " + str(verif) + " :"
texte_titre = type_ecriture.render(titre, 1, ORANGE)
# texte_titre = type_ecriture.render(titre, 1, ORANGE, (204, 204, 255)) permet de mettre un fond de couleur
ecran.blit(texte_titre, (largeur/4, hauteur/4))
display.flip()
def nom_joueur (verif):
display.init()
continuer = 1
if verif == 1 :
global nom
nom = ''
elif verif == 2 :
global nom_2
nom_2 = ''
ecran_joueur = display.set_mode((largeur, hauteur), FULLSCREEN)
fond_depart(ecran_joueur)
sim_nom(verif, ecran_joueur)
while continuer:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.unicode.isalpha():
if verif == 1 :
nom = nom + evenement_joueur.unicode
texte = type_ecriture.render(nom, True, ORANGE)
ecran_joueur.blit(texte, (float(largeur)/2.5, float(hauteur)/2.5))
elif verif == 2 :
nom_2 = nom_2 + evenement_joueur.unicode
texte = type_ecriture.render(nom_2, True, ORANGE)
ecran_joueur.blit(texte, (float(largeur)/2.5, float(hauteur)/2.5))
display.flip()
if evenement_joueur.key == K_RETURN:
if verif == 2 :
continuer = 0
ecran_accueil()
else :
continuer = 0
nom_joueur(2)
if evenement_joueur.key == K_BACKSPACE:
if verif == 1:
nom = nom[:-1]
texte = type_ecriture.render(nom, True, ORANGE)
elif verif == 2:
nom_2 = nom_2[:-1]
texte = type_ecriture.render(nom_2, True, ORANGE)
ecran_joueur = display.set_mode((largeur, hauteur), FULLSCREEN)
fond_depart(ecran_joueur)
sim_nom(verif, ecran_joueur)
ecran_joueur.blit(texte, (float(largeur)/2.5, float(hauteur)/2.5))
display.flip()
def ecran_accueil ():
continuer = 1
display.init() # Initialise la fenêtre graphique
ecran_accueil = display.set_mode((largeur, hauteur), FULLSCREEN)
accueil = image.load("accueil.jpg")
bouton_jouer = image.load("bouton_jouer.png")
bouton_regle = image.load("bouton_regle.png")
accueil = transform.scale(accueil,(largeur, hauteur))
bouton_jouer = transform.scale(bouton_jouer,(hauteur/5, hauteur/5))
bouton_regle = transform.scale(bouton_regle,(hauteur/3, hauteur/3))
ecran_accueil.blit(accueil, (0, 0))
ecran_accueil.blit(bouton_jouer, (hauteur/5, hauteur/5))
ecran_accueil.blit(bouton_regle, (6*hauteur/5, 3*hauteur/5))
display.flip()
while continuer:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.key == K_SPACE:
continuer = 0
ecran_principal()
if evenement_joueur.type == MOUSEBUTTONDOWN :
x, y = evenement_joueur.pos
if hauteur/5 <= x <= (2*hauteur)/5 and hauteur/5 <= y <= (2*hauteur)/5:
continuer = 0
ecran_principal()
elif 6*hauteur/5 <= x <= (23*hauteur)/15 and 3*hauteur/5 <= y <= (14*hauteur)/15:
continuer = 0
ecran_regle()
def ecran_regle ():
continuer = 1
display.init()
ecran_regle = display.set_mode((largeur, hauteur), FULLSCREEN)
fond_regle = image.load("ecran_regle.jpg")
fond_regle = transform.scale(fond_regle,(largeur, hauteur))
ecran_regle.blit(fond_regle, (0, 0))
display.flip()
while continuer:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.key == K_SPACE:
continuer = 0
ecran_principal()
if evenement_joueur.type == MOUSEBUTTONDOWN :
x, y = evenement_joueur.pos
if largeur/2.3 <= x <= largeur/1.8 and hauteur/2.6 <= y <= hauteur/1.6:
continuer = 0
ecran_accueil()
def ecran_principal ():
son_fond(1)
verif_son = 0
continuer = 1
verif_base = 0
ORANGE = 255, 100, 0
display.init() # Initialise la fenêtre graphique
fond = display.set_mode((largeur, hauteur), FULLSCREEN) # Definis la taille de l'écran de fond en fonction de l'écran du joueur
terre_image = image.load("herbe.png") # Charge l'image de la pelouse
route_image = image.load("route.png")# Charge l'image de la route
arbre_image = image.load("arbre.png").convert_alpha() # Charge l'image des arbres
contour_image = image.load("contour.png")
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()
terre_finale = transform.scale(terre_image,((61*largeur)/1920, (61*largeur)/1920))
route_finale = transform.scale(route_image,((61*largeur)/1920, (61*largeur)/1920))
arbre_finale = transform.scale(arbre_image,(2*((61*largeur)/1920), 2*((61*largeur)/1920)))
contour_finale = transform.scale(contour_image,((61*largeur)/1920, (61*largeur)/1920))
base_finale = transform.scale(base_image,(3*((60*largeur)/1920), 3*((60*largeur)/1920)))
base2_finale = transform.scale(base2_image,(3*((60*largeur)/1920), 3*((60*largeur)/1920)))
sortie_ennemie_finale = transform.scale(sortie_ennemie_image,((61*largeur)/1920, (61*largeur)/1920))
lecture_carte("dico_carte.txt") # Lis le dictionnaire contenant la carte
for i in herbe : # Parcours la liste comportant la position de l'herbe
fond.blit(terre_finale, i) # Met l'image dans le fond
for v in route : # Parcours la liste comportant la position de la route
fond.blit(route_finale, v) # Met l'image dans le fond
for p in arbre : # Parcours la liste comportant la position des arbres
fond.blit(arbre_finale, p) # Met l'image dans le fond
for c in contour :
fond.blit(contour_finale, c)
for b in base :
if verif_base == 0 :
fond.blit(base_finale, b)
verif_base = verif_base + 1
else :
fond.blit(base2_finale, b)
for s in sortie_ennemie :
fond.blit(sortie_ennemie_finale, s)
texte_joueur = type_ecriture.render(nom, True, ORANGE)
texte_joueur2 = type_ecriture.render(nom_2, True, ORANGE)
fond.blit(texte_joueur, ((60*largeur)/1920, ((60*largeur)/1920)))
fond.blit(texte_joueur2, (largeur - largeur/8, hauteur - hauteur/8))
display.flip() # Fais apparaître les différents éléments chargés
while continuer:
for evenement_joueur in event.get():
if evenement_joueur.type == KEYDOWN:
if evenement_joueur.key == K_SPACE:
continuer = 0
if evenement_joueur.key == K_s:
if verif_son % 2 == 0:
verif_son = verif_son + 1
son_fond(2)
elif verif_son % 2 == 1:
verif_son = verif_son + 1
son_fond(3)
ecran_depart()
Supports Markdown
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