Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Corentin MIMEAU
PolyDefense
Commits
96429085
Commit
96429085
authored
Nov 26, 2015
by
Vincent BRULE
Browse files
debut gestion joueur
parent
725d1cf7
Changes
1
Hide whitespace changes
Inline
Side-by-side
carte.py
View file @
96429085
...
...
@@ -63,21 +63,21 @@ def lecture_carte (fichier, carte): # Permet de lire le .txt contenant la carte
if
trouve_lettre
==
"O"
:
carte
.
liste_route
.
append
((
numColonne
,
numLigne
))
if
trouve_lettre
==
"A"
:
carte
.
liste_herbe
.
append
((
numColonne
,
numLigne
))
carte
.
liste_herbe
_avec_obstacle_arbre
.
append
((
numColonne
,
numLigne
))
carte
.
liste_arbre
.
append
((
numColonne
,
numLigne
))
if
trouve_lettre
==
"C"
:
carte
.
liste_contour
.
append
((
numColonne
,
numLigne
))
if
trouve_lettre
==
"B"
:
carte
.
liste_herbe
.
append
((
numColonne
,
numLigne
))
carte
.
liste_herbe
_avec_obstacle_base
.
append
((
numColonne
,
numLigne
))
carte
.
liste_base
.
append
((
numColonne
,
numLigne
))
if
trouve_lettre
==
"D"
:
carte
.
liste_herbe_avec_obstacle_simple
.
append
((
numColonne
,
numLigne
))
carte
.
liste_contour_sortie_ennemie
.
append
((
numColonne
,
numLigne
))
carte
.
liste_herbe
.
append
((
numColonne
,
numLigne
))
if
trouve_lettre
==
"E"
:
carte
.
liste_herbe_avec_obstacle_simple
.
append
((
numColonne
,
numLigne
))
carte
.
liste_contour_sortie_ennemie_2
.
append
((
numColonne
,
numLigne
))
carte
.
liste_herbe
.
append
((
numColonne
,
numLigne
))
if
trouve_lettre
==
"S"
:
carte
.
liste_herbe
.
append
((
numColonne
,
numLigne
))
carte
.
liste_herbe
_avec_obstacle_simple
.
append
((
numColonne
,
numLigne
))
carte
.
liste_sortie_ennemie
.
append
((
numColonne
,
numLigne
))
numColonne
=
numColonne
+
1
numLigne
=
numLigne
+
1
...
...
@@ -178,18 +178,30 @@ def maj_affichage_liste (ecran, liste, image):
ecran
.
blit
(
image
,
(
i
[
0
]
*
Constante
.
taille_rel
,
i
[
1
]
*
Constante
.
taille_rel
))
display
.
flip
()
def
ecran_principal
(
ecran
,
j1
,
j2
):
def
verif_pose_tourelle
(
ecran
,
carte
,
(
i
,
j
)):
if
(
i
,
j
)
not
in
carte
.
liste_herbe_avec_obstacle_simple
:
if
(
i
-
1
,
j
)
not
in
carte
.
liste_herbe_avec_obstacle_arbre
and
(
i
-
1
,
j
)
not
in
carte
.
liste_herbe_avec_obstacle_base
:
if
(
i
,
j
-
1
)
not
in
carte
.
liste_herbe_avec_obstacle_arbre
and
(
i
,
j
-
1
)
not
in
carte
.
liste_herbe_avec_obstacle_base
:
if
(
i
-
1
,
j
-
1
)
not
in
carte
.
liste_herbe_avec_obstacle_arbre
and
(
i
-
1
,
j
-
1
)
not
in
carte
.
liste_herbe_avec_obstacle_base
:
if
(
i
,
j
-
2
)
not
in
carte
.
liste_herbe_avec_obstacle_base
:
if
(
i
-
1
,
j
-
2
)
not
in
carte
.
liste_herbe_avec_obstacle_base
:
if
(
i
-
2
,
j
-
2
)
not
in
carte
.
liste_herbe_avec_obstacle_base
:
if
(
i
-
2
,
j
-
1
)
not
in
carte
.
liste_herbe_avec_obstacle_base
:
if
(
i
-
2
,
j
)
not
in
carte
.
liste_herbe_avec_obstacle_base
:
return
True
def
ecran_principal
(
ecran
,
j1
,
j2
,
verif_tour
):
son_fond
(
1
)
verif_son
=
0
verif_base
=
0
draw
.
rect
(
ecran
,
(
0
,
0
,
0
),
(
0
,
0
,
Constante
.
largeur
,
Constante
.
hauteur
))
contour_milieu_soldat_image
=
image
.
load
(
"contour_milieu_soldat.png"
)
contour_milieu_soldat_image_2
=
image
.
load
(
"contour_milieu_soldat_2.png"
)
t
er
r
e_image
=
image
.
load
(
"herbe.png"
)
# Charge l'image de la pelouse
h
er
b
e_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"
)
...
...
@@ -199,8 +211,7 @@ def ecran_principal(ecran, j1, j2):
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
))
terre_finale
=
transform
.
scale
(
terre_image
,(
Constante
.
taille_rel
,
Constante
.
taille_rel
))
herbe_finale
=
transform
.
scale
(
herbe_image
,(
Constante
.
taille_rel
,
Constante
.
taille_rel
))
route_finale
=
transform
.
scale
(
route_image
,(
Constante
.
taille_rel
,
Constante
.
taille_rel
))
arbre_finale
=
transform
.
scale
(
arbre_image
,(
2
*
Constante
.
taille_rel
,
2
*
Constante
.
taille_rel
))
...
...
@@ -215,7 +226,13 @@ def ecran_principal(ecran, j1, j2):
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
(
terre_finale
,
(
i
[
0
]
*
Constante
.
taille_rel
,
i
[
1
]
*
Constante
.
taille_rel
))
# Met l'image dans le fond
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_herbe_avec_obstacle_simple
:
# 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_herbe_avec_obstacle_arbre
:
# 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_herbe_avec_obstacle_base
:
# 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
...
...
@@ -234,9 +251,12 @@ def ecran_principal(ecran, j1, j2):
ecran
.
blit
(
base2_finale
,
(
i
[
0
]
*
Constante
.
taille_rel
,
i
[
1
]
*
Constante
.
taille_rel
))
for
i
in
carte
.
liste_sortie_ennemie
:
ecran
.
blit
(
sortie_ennemie_finale
,
(
i
[
0
]
*
Constante
.
taille_rel
,
i
[
1
]
*
Constante
.
taille_rel
))
if
verif_tour
==
1
:
draw
.
rect
(
ecran
,
(
0
,
0
,
0
),
(
Constante
.
largeur
/
2
,
0
,
Constante
.
largeur
/
2
,
Constante
.
hauteur
))
elif
verif_tour
==
2
:
draw
.
rect
(
ecran
,
(
0
,
0
,
0
),
(
0
,
0
,
15
*
Constante
.
largeur
/
32
,
Constante
.
hauteur
))
texte_joueur
=
Constante
.
type_ecriture
.
render
(
j1
.
nom
,
True
,
Constante
.
ORANGE
,
(
255
,
255
,
255
))
texte_joueur2
=
Constante
.
type_ecriture
.
render
(
j2
.
nom
,
True
,
Constante
.
ORANGE
,
(
255
,
255
,
255
))
ecran
.
blit
(
texte_joueur
,
(
Constante
.
taille_rel
,
((
Constante
.
largeur
)
/
Constante
.
largeur_ref
)))
...
...
@@ -259,9 +279,23 @@ def ecran_principal(ecran, j1, j2):
if
evenement_joueur
.
type
==
MOUSEBUTTONDOWN
:
(
x
,
y
)
=
evenement_joueur
.
pos
(
u
,
v
)
=
(
x
/
Constante
.
taille_rel
,
y
/
Constante
.
taille_rel
)
for
(
i
,
j
)
in
carte
.
liste_
rout
e
:
for
(
i
,
j
)
in
carte
.
liste_
herb
e
:
if
u
==
i
and
v
==
j
:
# ecran.blit(sortie_ennemie_finale, (i*Constante.taille_rel, j*Constante.taille_rel))
# display.flip()
carte
.
liste_sortie_ennemie
.
append
((
i
,
j
))
maj_affichage_liste
(
ecran
,
carte
.
liste_sortie_ennemie
,
sortie_ennemie_finale
)
\ No newline at end of file
if
verif_tour
==
1
:
if
i
<
16
:
if
verif_pose_tourelle
(
ecran
,
carte
,
(
i
,
j
))
==
True
:
carte
.
liste_sortie_ennemie
.
append
((
i
,
j
))
maj_affichage_liste
(
ecran
,
carte
.
liste_sortie_ennemie
,
sortie_ennemie_finale
)
if
verif_tour
==
2
:
if
i
>=
16
:
if
verif_pose_tourelle
(
ecran
,
carte
,
(
i
,
j
))
==
True
:
carte
.
liste_sortie_ennemie
.
append
((
i
,
j
))
maj_affichage_liste
(
ecran
,
carte
.
liste_sortie_ennemie
,
sortie_ennemie_finale
)
\ No newline at end of file
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment