Welcome, guest | Sign In | My Account | Store | Cart
# Créé par ISN_2016 , le 25/04/2016 en Python 3.2
#-*- coding: utf-8 -*-


from tkinter import *
from random import randint
import winsound


""" Touches Mouvements : Haut
                         Bas
                         Droite
                         Gauche

    Touches Attaque :    Espace
"""



#################################
""" Définition des fonctions """
#################################




# Ajout d'une touche à  la liste
def enfoncee(evt) :
   
if evt.keysym not in touches :
        touches
.append(evt.keysym)




# Suppression d'une touche de la liste
def relachee(evt) :
   
if evt.keysym in touches :
        touches
.remove(evt.keysym)

"""_______________________________________________________"""

###############################
# Animations des Personnages :
###############################

def animation() :
   
global Xp, Yp, Anim, num, dialogue, Xt1, Yt1, Xt2, Yt2, Xa, Ya, money, end
   
Xpav, Ypav = Xp, Yp
   
if "Up" in touches :
       
if Decors[(Yp-16)//64][(Xp)//64]  in (' ','-','O','P','i', 'm', 'c', 'w', 'v','n','!','b','W','a','f','s','o','k','u') :
           
Yp = Yp - 8
           
NomFichier = 'PERSOH'
       
if "space" in touches :
           
NomFichier = 'PERSOAH'

   
if "Down" in touches :
       
if Decors[(Yp+32)//64][(Xp)//64]  in (' ','-','O','P','i', 'm', 'c', 'w', 'v','n','!','b','W','a','f','s','o','k','u') :
           
Yp = Yp + 8
           
NomFichier = 'PERSOB'
       
if "space" in touches :
           
NomFichier = 'PERSOAB'

   
if "Left" in touches :
       
if Decors[(Yp)//64][(Xp-32)//64]  in (' ','-','O','P','i', 'm', 'c', 'w', 'v','n','!','b','W','a','f','s','o','k','u') :
           
Xp = Xp - 8
           
NomFichier = 'PERSOG'
       
if "space" in touches :
           
NomFichier = 'PERSOAG'

   
if "Right" in touches :
       
if Decors[(Yp)//64][(Xp+32)//64]  in (' ','-','O','P','i', 'm', 'c', 'w', 'v','n','!','b','W','a','f','s','o','k','u') :
           
Xp = Xp + 8
           
NomFichier = 'PERSOD'
       
if "space" in touches :
           
NomFichier = 'PERSOAD'

   
if Decors[(Yp)//64][(Xp+32)//64]  in '0' :
       
Xpav, Ypav = Xp, Yp


   
# Combats
   
if Xt1-50 < Xp < Xt1+50 and Yt1-50 < Yp < Yt1+50 :
       
if "space" in touches :
            winsound
.PlaySound("sons/zombie.wav", winsound.SND_ASYNC)
            boite
.delete('trolln1')
           
Xt1, Yt1 = -32, -32
       
if "space" not in touches :
            boite
.itemconfigure(sprite, image=PERSOM)

   
if Xt2-50 < Xp < Xt2+50 and Yt2-50 < Yp < Yt2+50 :
       
if "space" in touches :
            winsound
.PlaySound("sons/zombie.wav", winsound.SND_ASYNC)
            boite
.delete('trolln2')
           
Xt2, Yt2 = -32, -32
       
if "space" not in touches :
            boite
.itemconfigure(sprite, image=PERSOM)

   
if Xa-50 < Xp < Xa+50 and Ya-50 < Yp < Ya+50 :
       
if "space" in touches :
            winsound
.PlaySound("sons/criscorpionquimeurt.wav", winsound.SND_ALIAS)
            boite
.delete('boss')
           
Xa, Ya = -32, -32
            dialogue
=2
       
if "space" not in touches :
            boite
.itemconfigure(sprite, image=PERSOM)


   
# Changement de tableau
   
if num!=103 and num!=104:
       
if Decors[(Yp)//64][(Xp)//64]  in ('b') :
            num
+=1
            fenetre
.destroy()

   
#tableaux speciaux(15-100-101)
   
if Decors[(Yp)//64][(Xp)//64]  in ('W') :
        num
=15
        fenetre
.destroy()

   
if Decors[(Yp)//64][(Xp)//64]  in ('u') :
       
if num==7 :
            num
= 100
            fenetre
.destroy()
       
if num==8 :
            num
= 101
            fenetre
.destroy()

   
if Decors[(Yp)//64][(Xp)//64]  in ('s') :
       
if num==101:
            num
=104
            fenetre
.destroy()
       
if num==100:
            num
= 103
            fenetre
.destroy()

   
if num==103:
       
if Decors[(Yp)//64][(Xp)//64]  in ('b') :
            num
=8
            fenetre
.destroy()

   
if num==104:
       
if Decors[(Yp)//64][(Xp)//64]  in ('b') :
            num
=9
            fenetre
.destroy()



   
# Dialogues
   
if num==1 :
       
if Decors[(Yp)//64][(Xp)//64]  in (' ') :
           
if dialogue==0 :
                boite
.create_image(0, 0, image=jack, anchor=NW, tags='bulle')
                winsound
.PlaySound("sons/dialogue.wav", winsound.SND_ASYNC)
                dialogue
=1

   
if num==3 :
       
if Decors[(Yp)//64][(Xp)//64]  in ('o') :
           
if dialogue==0 :
                boite
.create_image(0, 0, image=tatidou, anchor=NW, tags='bulle')
                winsound
.PlaySound("sons/dialogue.wav", winsound.SND_ASYNC)
                dialogue
=1

       
if Decors[(Yp)//64][(Xp)//64]  in (' ') :
           
if dialogue==1 :
                boite
.delete('bulle')
                boite
.create_image(0, 0, image=epee, anchor=NW, tags='bulle')
                winsound
.PlaySound("sons/item.wav", winsound.SND_ASYNC)
                dialogue
=2


   
if num==15 :
       
if Decors[(Yp)//64][(Xp)//64]  in (' ') :
           
if dialogue==0 :
                boite
.create_image(0, 0, image=theargoste, anchor=NW, tags='bulle')
                winsound
.PlaySound("sons/dialogue.wav", winsound.SND_ALIAS)
                winsound
.PlaySound("sons/boss.wav", winsound.SND_ASYNC)
                dialogue
=1

       
if dialogue==2 :
            boite
.create_image(0, 0, image=tatidou_fin, anchor=NW, tags='bulle')
            boite
.create_image(Xp+64, Yp, image=PNJ1, anchor=NW)
            winsound
.PlaySound("sons/dialogue.wav", winsound.SND_ALIAS)
            winsound
.PlaySound("sons/fete.wav", winsound.SND_ASYNC)
            dialogue
=3
           
end=1



   
if 'Return' in touches :
       
if end==0 :
            boite
.delete('bulle')
       
if end==1 :
            num
=16
            fenetre
.destroy()

   
if Decors[(Yp)//64][(Xp)//64]  in ('k') :
       
if money==0 :
            winsound
.PlaySound("sons/geme.wav", winsound.SND_ASYNC)
            boite
.delete('geme')
            money
=1




   
# Animation
   
if (Xpav, Ypav) != (Xp, Yp) :
       
Anim = 1 - Anim
        boite
.itemconfigure(sprite, image=eval(NomFichier+str(Anim)))


    boite
.coords(sprite, Xp, Yp)
    fenetre
.after(90,animation)




def troll1() :
   
global Xt1, Yt1, AnimM1
   
Xt1av, Yt1av = Xt1, Yt1

   
if Decors[(Yt1)//64][(Xt1)//64]  in ('i', 'm') :
       
Yt1 = Yt1 - 8
       
NomFichier = 'MONSTREH'


   
if Decors[(Yt1)//64][(Xt1)//64]  in ('c') :
       
Yt1 = Yt1 + 8
       
NomFichier = 'MONSTREB'

   
if Decors[(Yt1)//64][(Xt1)//64]  in ('w','n') :
       
Xt1 = Xt1 - 8
       
NomFichier = 'MONSTREG'

   
if Decors[(Yt1)//64][(Xt1)//64]  in ('v') :
       
Xt1 = Xt1 + 8
       
NomFichier = 'MONSTRED'

   
if (Xt1av, Yt1av) != (Xt1, Yt1) :
       
AnimM1 = 1 - AnimM1
        boite
.itemconfigure(monstre1, image=eval(NomFichier+str(AnimM1)))


    boite
.coords(monstre1, Xt1, Yt1)
    fenetre
.after(70,troll1)





def troll2() :
   
global Xt2, Yt2, AnimM2
   
Xt2av, Yt2av = Xt2, Yt2

   
if Decors[(Yt2)//64][(Xt2)//64]  in ('i','m') :
       
Yt2 = Yt2 - 8
       
NomFichier = 'MONSTREH'


   
if Decors[(Yt2)//64][(Xt2)//64]  in ('c') :
       
Yt2 = Yt2 + 8
       
NomFichier = 'MONSTREB'

   
if Decors[(Yt2)//64][(Xt2)//64]  in ('w', 'n') :
       
Xt2 = Xt2 - 8
       
NomFichier = 'MONSTREG'

   
if Decors[(Yt2)//64][(Xt2)//64]  in ('v') :
       
Xt2 = Xt2 + 8
       
NomFichier = 'MONSTRED'

   
if (Xt2av, Yt2av) != (Xt2, Yt2) :
       
AnimM2 = 1 - AnimM2
        boite
.itemconfigure(monstre2, image=eval(NomFichier+str(AnimM2)))


    boite
.coords(monstre2, Xt2, Yt2)
    fenetre
.after(70,troll2)




def PNJ() :
   
global Yj, Xj, AnimJ

   
if Decors[(Yj)//64][(Xj)//64]  in ('j') :
       
NomFichier = 'PNJ'
       
AnimJ = 1 - AnimJ
        boite
.itemconfigure(pnj, image=eval(NomFichier+str(AnimJ)))
    fenetre
.after(1000,PNJ)




def argoste() :
   
global Ya, Xa, AnimA
   
NomFichier = 'ARGOSTE'

   
if Decors[(Ya)//64][(Xa)//64]  in ('a',' ','P') :
       
Xa = Xa + randint(-100,100)
       
Ya = Ya + randint(-100,100)

   
if IndexError  :
       
Xa = randint(64,1216)
       
Ya = randint(64,768)

   
if Decors[(Ya)//64][(Xa)//64]  in ('1','2','3','4','5','6','7','8','9','d','f','g','h')  :
       
Xa = randint(64,1216)
       
Ya = randint(64,768)

   
AnimA = 1 - AnimA
    boite
.itemconfigure(largoste, image=eval(NomFichier+str(AnimA)))
    boite
.coords(largoste, Xa, Ya)
    fenetre
.after(2000,argoste)


# PNJs de la dernière salle (16)

def Machin() :
   
global Ymachin, Xmachin, AnimJ

   
if Decors[(Ymachin)//64][(Xmachin)//64]  in ('e') :
       
NomFichier = 'MACHIN'
       
AnimJ = 1 - AnimJ # Tempo
        boite
.itemconfigure(machin, image=eval(NomFichier+str(AnimJ)))
    fenetre
.after(200,Machin)

def Fille() :
   
global Yfille, Xfille, AnimJ

   
if Decors[(Yfille)//64][(Xfille)//64]  in ('x') :
       
NomFichier = 'FILLE'
        boite
.itemconfigure(fille, image=eval(NomFichier+str(AnimJ)))
    fenetre
.after(200,Fille)

def Mario() :
   
global Ymario, Xmario, AnimJ

   
if Decors[(Ymario)//64][(Xmario)//64]  in ('y') :
       
NomFichier = 'MARIO'
        boite
.itemconfigure(mario, image=eval(NomFichier+str(AnimJ)))
    fenetre
.after(200,Mario)

def Luigi() :
   
global Yluigi, Xluigi, AnimJ

   
if Decors[(Yluigi)//64][(Xluigi)//64]  in ('l') :
       
NomFichier = 'LUIGI'
        boite
.itemconfigure(luigi, image=eval(NomFichier+str(AnimJ)))
    fenetre
.after(200,Luigi)

def Binoclare() :
   
global Ybinoclare, Xbinoclare, AnimJ

   
if Decors[(Ybinoclare)//64][(Xbinoclare)//64]  in ('$') :
       
NomFichier = 'BINOCLARE'
        boite
.itemconfigure(binoclare, image=eval(NomFichier+str(AnimJ)))
    fenetre
.after(200,Binoclare)

def Chelou() :
   
global Ychelou, Xchelou, AnimJ

   
if Decors[(Ychelou)//64][(Xchelou)//64]  in ('€') :
       
NomFichier = 'CHELOU'
        boite
.itemconfigure(chelou, image=eval(NomFichier+str(AnimJ)))
    fenetre
.after(200,Chelou)


"""______________________________________________"""



# Lecture du fichier contenant la boite

def charge_boite(nom) :
    fichier
= open(nom + ".txt", "r")
    data
= fichier.readlines()
    fichier
.close()
   
return data



# Dessin de l'interface graphique

def dessine():
   
global Xp, Yp, Xt1, Yt1, Xt2, Yt2, Xj, Yj, Xa, Ya, X0, Y0, Xmachin, Ymachin, Xfille, Yfille
   
global  Xmario, Ymario, Xluigi, Yluigi, Xbinoclare, Ybinoclare, Xchelou, Ychelou, t1, t2, b,num

   
# Textures Environnement
    ligne
, colonne = 0, 0
   
while ligne < 13 :
       
if Decors[ligne][colonne] == 'X' :
            boite
.create_image(colonne*64, ligne*64, image=X, anchor=NW)
       
if Decors[ligne][colonne] == 'A' :
            boite
.create_image(colonne*64, ligne*64, image=A, anchor=NW)
       
if Decors[ligne][colonne] == 'H' :
            boite
.create_image(colonne*64, ligne*64, image=H, anchor=NW)
       
if Decors[ligne][colonne] == ' ' :
            boite
.create_image(colonne*64, ligne*64, image=R, anchor=NW)
       
if Decors[ligne][colonne] == 'B' :
            boite
.create_image(colonne*64, ligne*64, image=B, anchor=NW)
       
if Decors[ligne][colonne] == 'V' :
            boite
.create_image(colonne*64, ligne*64, image=V, anchor=NW)
       
if Decors[ligne][colonne] == 'N' :
            boite
.create_image(colonne*64, ligne*64, image=N, anchor=NW)
       
if Decors[ligne][colonne] == 'M' :
            boite
.create_image(colonne*64, ligne*64, image=M, anchor=NW)
       
if Decors[ligne][colonne] == 'K' :
            boite
.create_image(colonne*64, ligne*64, image=K, anchor=NW)
       
if Decors[ligne][colonne] == 'E' :
            boite
.create_image(colonne*64, ligne*64, image=E, anchor=NW)
       
if Decors[ligne][colonne] == 'I' :
            boite
.create_image(colonne*64, ligne*64, image=I, anchor=NW)
       
if Decors[ligne][colonne] == 'L' :
            boite
.create_image(colonne*64, ligne*64, image=L, anchor=NW)
       
if Decors[ligne][colonne] == 'T' :
            boite
.create_image(colonne*64, ligne*64, image=T, anchor=NW)
       
if Decors[ligne][colonne] == 'G' :
            boite
.create_image(colonne*64, ligne*64, image=G, anchor=NW)
       
if Decors[ligne][colonne] == 'Q' :
            boite
.create_image(colonne*64, ligne*64, image=Q, anchor=NW)
       
if Decors[ligne][colonne] == 'U' :
            boite
.create_image(colonne*64, ligne*64, image=U, anchor=NW)
       
if Decors[ligne][colonne] == 'C' :
            boite
.create_image(colonne*64, ligne*64, image=C, anchor=NW)
       
if Decors[ligne][colonne] == 'J' :
            boite
.create_image(colonne*64, ligne*64, image=J, anchor=NW)
       
if Decors[ligne][colonne] == 'O' :
            boite
.create_image(colonne*64, ligne*64, image=O, anchor=NW)
       
if Decors[ligne][colonne] == '-' :
            boite
.create_image(colonne*64, ligne*64, image=Y, anchor=NW)
       
if Decors[ligne][colonne] == 'W' :
            boite
.create_image(colonne*64, ligne*64, image=W, anchor=NW)
       
if Decors[ligne][colonne] == 'F' :
            boite
.create_image(colonne*64, ligne*64, image=F, anchor=NW)
       
if Decors[ligne][colonne] == 'D' :
            boite
.create_image(colonne*64, ligne*64, image=D, anchor=NW)
       
if Decors[ligne][colonne] == 'S' :
            boite
.create_image(colonne*64, ligne*64, image=S, anchor=NW)
       
if Decors[ligne][colonne] == 'Z' :
            boite
.create_image(colonne*64, ligne*64, image=Z, anchor=NW)
       
if Decors[ligne][colonne] == 'z' :
            boite
.create_image(colonne*64, ligne*64, image=z, anchor=NW)
       
if Decors[ligne][colonne] == '!' :
            boite
.create_image(colonne*64, ligne*64, image=q, anchor=NW)
       
if Decors[ligne][colonne] == '1' :
            boite
.create_image(colonne*64, ligne*64, image=mur11, anchor=NW)
       
if Decors[ligne][colonne] == '2' :
            boite
.create_image(colonne*64, ligne*64, image=mur12, anchor=NW)
       
if Decors[ligne][colonne] == '3' :
            boite
.create_image(colonne*64, ligne*64, image=mur21, anchor=NW)
       
if Decors[ligne][colonne] == '4' :
            boite
.create_image(colonne*64, ligne*64, image=mur22, anchor=NW)
       
if Decors[ligne][colonne] == '5' :
            boite
.create_image(colonne*64, ligne*64, image=mur31, anchor=NW)
       
if Decors[ligne][colonne] == '6' :
            boite
.create_image(colonne*64, ligne*64, image=mur32, anchor=NW)
       
if Decors[ligne][colonne] == '7' :
            boite
.create_image(colonne*64, ligne*64, image=mur41, anchor=NW)
       
if Decors[ligne][colonne] == '8' :
            boite
.create_image(colonne*64, ligne*64, image=mur42, anchor=NW)
       
if Decors[ligne][colonne] == 'h' :
            boite
.create_image(colonne*64, ligne*64, image=mur1, anchor=NW)
       
if Decors[ligne][colonne] == 'd' :
            boite
.create_image(colonne*64, ligne*64, image=mur2, anchor=NW)
       
if Decors[ligne][colonne] == 'f' :
            boite
.create_image(colonne*64, ligne*64, image=mur3, anchor=NW)
       
if Decors[ligne][colonne] == 'g' :
            boite
.create_image(colonne*64, ligne*64, image=mur4, anchor=NW)
       
if Decors[ligne][colonne] == 'r' :
            boite
.create_image(colonne*64, ligne*64, image=porte1, anchor=NW)
       
if Decors[ligne][colonne] == 't' :
            boite
.create_image(colonne*64, ligne*64, image=porte2, anchor=NW)

       
if Decors[ligne][colonne] == 'k' :
            boite
.create_image(colonne*64, ligne*64, image=geme, anchor=NW, tags='geme')



       
# Textures Perso

       
if Decors[ligne][colonne] == 'P' :
           
Xp, Yp = X0+colonne*64+32, Y0+ligne*64+32

       
if Decors[ligne][colonne] == 'm' :
           
Xt1, Yt1 = X0+colonne*64+32, Y0+ligne*64+32
            t1
=1

       
if Decors[ligne][colonne] != 'm' and t1==0:
           
Xt1, Yt1 = -32, -32

       
if Decors[ligne][colonne] == 'n' :
           
Xt2, Yt2 = X0+colonne*64+32, Y0+ligne*64+32
            t2
=1

       
if Decors[ligne][colonne] != 'n' and t2==0 :
           
Xt2, Yt2 = -32, -32

       
if Decors[ligne][colonne] == 'j' :
           
Xj, Yj = colonne*64+32, ligne*64+32

       
if Decors[ligne][colonne] == 'a' :
           
Xa, Ya = X0+colonne*64, Y0+ligne*64
            b
=1

       
if Decors[ligne][colonne] != 'a' and b==0 :
           
Xa, Ya = -32, -32

       
if Decors[ligne][colonne] == 'e' :
           
Xmachin, Ymachin = colonne*64+32, ligne*64+32

       
if Decors[ligne][colonne] == 'x' :
           
Xfille, Yfille = colonne*64+32, ligne*64+32

       
if Decors[ligne][colonne] == 'y' :
           
Xmario, Ymario = colonne*64+32, ligne*64+32

       
if Decors[ligne][colonne] == 'l' :
           
Xluigi, Yluigi = colonne*64+32, ligne*64+32

       
if Decors[ligne][colonne] == '$' :
           
Xbinoclare, Ybinoclare = colonne*64+32, ligne*64+32

       
if Decors[ligne][colonne] == '€' :
           
Xchelou, Ychelou = colonne*64+32, ligne*64+32







        colonne
=colonne+1
       
if colonne == 20 :
            colonne
= 0
            ligne
= ligne + 1




def textures():
       
global A,Z,E,R,T,Y,U,I,O,P,Q,S,D,F,G,H,J,K,L,M,W,X,C,V,B,N,z,q,geme,mur1,mur11,mur12,mur2
       
global mur21,mur22,mur3,mur31,mur32,mur4,mur41,mur42,porte1,porte2,PNJ0,PNJ1,PERSOAB0
       
global PERSOAB1,PERSOAD0,PERSOAD1,PERSOAG0,PERSOAG1,PERSOAH0,PERSOAH1,PERSOB0
       
global PERSOB1,PERSOD0,PERSOD1,PERSOG0,PERSOG1,PERSOH0,PERSOH1,PERSOM,MONSTREB0
       
global MONSTREB1,MONSTRED0,MONSTRED1,MONSTREG0,MONSTREG1,MONSTREH0,MONSTREH1,ARGOSTE0,ARGOSTE1
       
#Chargement des fichiers :
       
#Roches
        X
=PhotoImage(file = "images/cailloux_bas_milieu.gif")
        H
=PhotoImage(file = "images/cailloux_haut_milieu.gif")
        V
=PhotoImage(file = "images/cailloux_bas_gauche.gif")
        N
=PhotoImage(file = "images/cailloux_bas_droite.gif")
        M
=PhotoImage(file = "images/cailloux_haut_gauche.gif")
        K
=PhotoImage(file = "images/cailloux_haut_droite.gif")

       
#Random
        A
=PhotoImage(file = "images/arbre.gif")
        R
=PhotoImage(file = "images/sol1.gif")
        Y
=PhotoImage(file = "images/sol2.gif")
        B
=PhotoImage(file = "images/buisson.gif")
        F
=PhotoImage(file = "images/tombe.gif")
        W
=PhotoImage(file = "images/escalier.gif")
        O
=PhotoImage(file = "images/pont.gif")
        D
=PhotoImage(file = "images/garde.gif")
        S
=PhotoImage(file = "images/maison1.gif")
        Z
=PhotoImage(file = "images/maison2.gif")
        z
=PhotoImage(file = "images/maison3.gif")
        q
=PhotoImage(file = "images/quest.gif")
        geme
=PhotoImage(file = "images/geme.gif")


       
#Eau
        E
=PhotoImage(file = "images/eau.gif")
        I
=PhotoImage(file = "images/eau_milieu_gauche.gif")
        L
=PhotoImage(file = "images/eau_milieu_droite.gif")
        T
=PhotoImage(file = "images/eau_haut_milieu.gif")
        G
=PhotoImage(file = "images/eau_haut_gauche.gif")
        Q
=PhotoImage(file = "images/eau_haut_droite.gif")
        U
=PhotoImage(file = "images/eau_bas_milieu.gif")
        C
=PhotoImage(file = "images/eau_bas_gauche.gif")
        J
=PhotoImage(file = "images/eau_bas_droite.gif")

       
# Donjon
        mur1
=PhotoImage(file = "images/donjon/mur_haut_gauche.gif")
        mur2
=PhotoImage(file = "images/donjon/mur_haut_droite.gif")
        mur3
=PhotoImage(file = "images/donjon/mur_bas_droite.gif")
        mur4
=PhotoImage(file = "images/donjon/mur_bas_gauche.gif")

        mur11
=PhotoImage(file = "images/donjon/mur_haut_3.gif")
        mur12
=PhotoImage(file = "images/donjon/mur_haut_6.gif")
        mur21
=PhotoImage(file = "images/donjon/mur_droite_3.gif")
        mur22
=PhotoImage(file = "images/donjon/mur_droite_6.gif")
        mur31
=PhotoImage(file = "images/donjon/mur_bas_3.gif")
        mur32
=PhotoImage(file = "images/donjon/mur_bas_6.gif")
        mur41
=PhotoImage(file = "images/donjon/mur_gauche_3.gif")
        mur42
=PhotoImage(file = "images/donjon/mur_gauche_6.gif")

        porte1
=PhotoImage(file = "images/donjon/mur_porte_1.gif")
        porte2
=PhotoImage(file = "images/donjon/mur_porte_2.gif")




       
# Information sur le perso :
        PERSOG0
=PhotoImage(file="images/sprites/perso1.gif")
        PERSOD0
=PhotoImage(file="images/sprites/perso8.gif")
        PERSOG1
=PhotoImage(file="images/sprites/perso2.gif")
        PERSOD1
=PhotoImage(file="images/sprites/perso7.gif")
        PERSOH0
=PhotoImage(file="images/sprites/perso5.gif")
        PERSOH1
=PhotoImage(file="images/sprites/perso6.gif")
        PERSOB0
=PhotoImage(file="images/sprites/perso3.gif")
        PERSOB1
=PhotoImage(file="images/sprites/perso4.gif")
        PERSOAD0
=PhotoImage(file="images/sprites/persoattaquedroite.gif")
        PERSOAD1
=PhotoImage(file="images/sprites/persoattaquedroite.gif")
        PERSOAG0
=PhotoImage(file="images/sprites/persoattaquegauche.gif")
        PERSOAG1
=PhotoImage(file="images/sprites/persoattaquegauche.gif")
        PERSOAD1
=PhotoImage(file="images/sprites/persoattaquedroite.gif")
        PERSOAB0
=PhotoImage(file="images/sprites/persoattaquebas.gif")
        PERSOAB1
=PhotoImage(file="images/sprites/persoattaquebas.gif")
        PERSOAH0
=PhotoImage(file="images/sprites/persoattaquehaut.gif")
        PERSOAH1
=PhotoImage(file="images/sprites/persoattaquehaut.gif")
        PERSOM
=PhotoImage(file="images/sprites/persomort.gif")


       
# Information sur le monstre :
        MONSTREG0
=PhotoImage(file="images/sprites/monstre1gauche.gif")
        MONSTREG1
=PhotoImage(file="images/sprites/monstre2gauche.gif")
        MONSTRED0
=PhotoImage(file="images/sprites/monstre1droite.gif")
        MONSTRED1
=PhotoImage(file="images/sprites/monstre2droite.gif")
        MONSTREH0
=PhotoImage(file="images/sprites/monstre1haut.gif")
        MONSTREH1
=PhotoImage(file="images/sprites/monstre2haut.gif")
        MONSTREB0
=PhotoImage(file="images/sprites/monstre1bas.gif")
        MONSTREB1
=PhotoImage(file="images/sprites/monstre2bas.gif")

        PNJ0
=PhotoImage(file="images/sprites/PNJ1.gif")
        PNJ1
=PhotoImage(file="images/sprites/PNJ2.gif")

        ARGOSTE0
=PhotoImage(file="images/sprites/argoste0.gif")
        ARGOSTE1
=PhotoImage(file="images/sprites/argoste1.gif")



def play():
    winsound
.PlaySound("sons/blanc.wav", winsound.SND_ASYNC)
    frame
.destroy()



"""___________________________________________________________"""



###########################################
""" Initialisation du programme chroma """
###########################################




num
= 1 # numéro du niveau


touches
=[]



while True :
   
if num == 1 :

        fenetre
=Tk()
        fenetre
.resizable(width=False, height=False)
        winsound
.PlaySound("sons/quest.wav", winsound.SND_ASYNC | winsound.SND_LOOP)


        fenetre
.title("chroma")
        fenetre
.iconbitmap("@arbre.xbm")
        fenetre
.geometry("1280x832+0+0")
        fenetre
.lift()

        MENU0
=PhotoImage(file="images/menu.gif")
        jack
=PhotoImage(file="images/dialogues/bulle_jack.gif")

       
# Dessin de l'interface
        boite
= Canvas(fenetre,width=1280,height=832, bg="#dedede")
        boite
.place(x=0,y=0)


       
# Menu
        frame
= Canvas(fenetre,width=1280,height=832, bg="#dedede")
        mon_menu
= frame.create_image(0, 0, image=MENU0, anchor=NW)
        frame
.pack(fill=BOTH, expand= 1)

        play
= Button(frame,text="Play",width=10,height=2,font='bold',command=play)
        play
.place(x=615,y=700)


       
# Jeu
        X0
, Y0 = 0, 0 # Positions
       
Xj, Yj = -32, -32
       
Xmachin, Ymachin = -32, -32
       
Xfille, Yfille = -32, -32
       
Xmario, Ymario = -32, -32
       
Xluigi, Yluigi = -32, -32
       
Xbinoclare, Ybinoclare = -32, -32
       
Xchelou, Ychelou = -32, -32



        fenetre
.bind_all("<KeyPress>",enfoncee)
        fenetre
.bind_all("<KeyRelease>",relachee)


       
Anim = 0 # Variables d'animation
       
AnimM1 = 0
       
AnimM2 = 0
       
AnimJ = 0

        dialogue
=0  # Variable Dialogues
       
end=0 # Variable suppression bulle


        t1
=0 # Variables Position
        t2
=0
        b
=0

       
# Chargement du tableau

        box
= 'boites/boite'+str(num)
       
Decors = charge_boite(box)

        textures
()
        dessine
()

        pnj
= boite.create_image(Xj, Yj, image=PNJ1)  #Sprites Perso
        sprite
= boite.create_image(Xp, Yp, image=PERSOB1)
        monstre1
= boite.create_image(Xt1, Yt1, image=MONSTREH0, tags='trolln1')
        monstre2
= boite.create_image(Xt2, Yt2, image=MONSTREH0, tags='trolln2')

        animation
()  #Animations Perso
        troll1
()
        troll2
()
        PNJ
()


        fenetre
.mainloop()




   
if num >= 2 :

        fenetre
=Tk()
        fenetre
.resizable(width=False, height=False)

        fenetre
.title("chroma")
        fenetre
.iconbitmap("@arbre.xbm")
        fenetre
.geometry("1280x832+0+0")
        fenetre
.focus_force()



       
# Dessin de l'interface
        boite
= Canvas(fenetre,width=1280,height=832, bg="#dedede")
        boite
.place(x=0,y=0)


        epee
=PhotoImage(file="images/dialogues/bulle_epee.gif")
        tatidou
=PhotoImage(file="images/dialogues/bulle_tatidou.gif")


       
# Jeu
        X0
, Y0 = 0, 0 # Positions
       
Xj, Yj = -32, -32
       
Xmachin, Ymachin = -32, -32
       
Xfille, Yfille = -32, -32
       
Xmario, Ymario = -32, -32
       
Xluigi, Yluigi = -32, -32
       
Xbinoclare, Ybinoclare = -32, -32
       
Xchelou, Ychelou = -32, -32

        fenetre
.bind_all("<KeyPress>",enfoncee)
        fenetre
.bind_all("<KeyRelease>",relachee)


       
Anim = 0 # Variables d'animation
       
AnimM1 = 0
       
AnimM2 = 0
       
AnimJ = 0

        dialogue
=0 # Variable Dialogues
        money
=0 # Variable geme
       
end=0 # Variable suppression bulle

        t1
=0 # Variables Position
        t2
=0
        b
=0



       
# Chargement du tableau

        box
= 'boites/boite'+str(num)
       
Decors = charge_boite(box)


        textures
()
        dessine
()

        pnj
= boite.create_image(Xj, Yj, image=PNJ1)  #Sprite Perso
        sprite
= boite.create_image(Xp, Yp, image=PERSOB1)
        monstre1
= boite.create_image(Xt1, Yt1, image=MONSTREH0, tags='trolln1')
        monstre2
= boite.create_image(Xt2, Yt2, image=MONSTREH0, tags='trolln2')

        animation
()  #Animation Perso
        troll1
()
        troll2
()
        PNJ
()


        fenetre
.mainloop()





   
if num == 15 :

        fenetre
=Tk()
        fenetre
.resizable(width=False, height=False)

        fenetre
.title("chroma")
        fenetre
.iconbitmap("@arbre.xbm")
        fenetre
.geometry("1280x832+0+0")
        fenetre
.focus_force()


       
# Dessin de l'interface
        boite
= Canvas(fenetre,width=1280,height=832, bg="#dedede")
        boite
.place(x=0,y=0)

        tatidou_fin
=PhotoImage(file="images/dialogues/bulle_tatidou_fin.gif")
        theargoste
=PhotoImage(file="images/dialogues/bulle_argoste.gif")

       
# Jeu
        X0
, Y0 = 0, 0 # Positions
       
Xj, Yj = -32, -32
       
Xmachin, Ymachin = -32, -32
       
Xfille, Yfille = -32, -32
       
Xmario, Ymario = -32, -32
       
Xluigi, Yluigi = -32, -32
       
Xbinoclare, Ybinoclare = -32, -32
       
Xchelou, Ychelou = -32, -32


        fenetre
.bind_all("<KeyPress>",enfoncee)
        fenetre
.bind_all("<KeyRelease>",relachee)


       
Anim = 0 # Variables d'animation
       
AnimM1 = 0
       
AnimM2 = 0
       
AnimJ = 0
       
AnimA = 0

        dialogue
=0 # Variable Dialogues
       
end=0 # Variable suppression bulle

        t1
=0 # Variables Position
        t2
=0
        b
=0


       
# Chargement du tableau

        box
= 'boites/boite'+str(num)
       
Decors = charge_boite(box)


        textures
()
        dessine
()

        pnj
= boite.create_image(Xj, Yj, image=PNJ1)  #Sprites Perso
        sprite
= boite.create_image(Xp, Yp, image=PERSOB1)
        monstre1
= boite.create_image(Xt1, Yt1, image=MONSTREH0, tags='trolln1')
        monstre2
= boite.create_image(Xt2, Yt2, image=MONSTREH0, tags='trolln2')
        largoste
= boite.create_image(Xa, Ya, image=ARGOSTE0, tags='boss')


        animation
()  #Animations Perso
        troll1
()
        troll2
()
        PNJ
()
        argoste
()

        fenetre
.mainloop()



   
if num == 16:

        fenetre
=Tk()
        fenetre
.resizable(width=False, height=False)

        fenetre
.title("chroma")
        fenetre
.iconbitmap("@arbre.xbm")
        fenetre
.geometry("1280x832+0+0")
        fenetre
.focus_force()

       
# Dessin de l'interface
        boite
= Canvas(fenetre,width=1280,height=832, bg="#bddba8")
        boite
.place(x=0,y=0)

       
#Jeu
        X0
, Y0 = 0, 0 # Positions
       
Xj, Yj = -32, -32
       
Xmachin, Ymachin = -32, -32
       
Xfille, Yfille = -32, -32
       
Xmario, Ymario = -32, -32
       
Xluigi, Yluigi = -32, -32
       
Xbinoclare, Ybinoclare = -32, -32
       
Xchelou, Ychelou = -32, -32

        fenetre
.bind_all("<KeyPress>",enfoncee)
        fenetre
.bind_all("<KeyRelease>",relachee)

       
Anim = 0 # Variables d'animation
       
AnimJ = 0


        dialogue
=0 # Variable Dialogues
       
end=0 # Variable suppression bulle

        t1
=0 # Variables Position
        t2
=0
        b
=0


       
# Chargement du tableau

        box
= 'boites/boite'+str(num)
       
Decors = charge_boite(box)


       
# Chargement des sprites spéciaux (colorés)
        PERSOG0
=PhotoImage(file="images/couleur/perso1.gif")
        PERSOD0
=PhotoImage(file="images/couleur/perso8.gif")
        PERSOG1
=PhotoImage(file="images/couleur/perso2.gif")
        PERSOD1
=PhotoImage(file="images/couleur/perso7.gif")
        PERSOH0
=PhotoImage(file="images/couleur/perso5.gif")
        PERSOH1
=PhotoImage(file="images/couleur/perso6.gif")
        PERSOB0
=PhotoImage(file="images/couleur/perso3.gif")
        PERSOB1
=PhotoImage(file="images/couleur/perso4.gif")
        PERSOAD0
=PhotoImage(file="images/couleur/persoattaquedroite.gif")
        PERSOAD1
=PhotoImage(file="images/couleur/persoattaquedroite.gif")
        PERSOAG0
=PhotoImage(file="images/couleur/persoattaquegauche.gif")
        PERSOAG1
=PhotoImage(file="images/couleur/persoattaquegauche.gif")
        PERSOAD1
=PhotoImage(file="images/couleur/persoattaquedroite.gif")
        PERSOAB0
=PhotoImage(file="images/couleur/persoattaquebas.gif")
        PERSOAB1
=PhotoImage(file="images/couleur/persoattaquebas.gif")
        PERSOAH0
=PhotoImage(file="images/couleur/persoattaquehaut.gif")
        PERSOAH1
=PhotoImage(file="images/couleur/persoattaquehaut.gif")


        A
=PhotoImage(file = "images/couleur/arbre.gif")
        R
=PhotoImage(file = "images/couleur/sol.gif")
        S
=PhotoImage(file = "images/couleur/maison1.gif")
        Z
=PhotoImage(file = "images/couleur/maison2.gif")
        z
=PhotoImage(file = "images/couleur/maison3.gif")

       
#Eau(Optionel)
        E
=PhotoImage(file = "images/couleur/eau.gif")
        I
=PhotoImage(file = "images/couleur/eau_milieu_gauche.gif")
        L
=PhotoImage(file = "images/couleur/eau_milieu_droite.gif")
        T
=PhotoImage(file = "images/couleur/eau_haut_milieu.gif")
        G
=PhotoImage(file = "images/couleur/eau_haut_gauche.gif")
        Q
=PhotoImage(file = "images/couleur/eau_haut_droite.gif")
        U
=PhotoImage(file = "images/couleur/eau_bas_milieu.gif")
        C
=PhotoImage(file = "images/couleur/eau_bas_gauche.gif")
        J
=PhotoImage(file = "images/couleur/eau_bas_droite.gif")

        MACHIN0
=PhotoImage(file="images/npc/machin1.gif")
        MACHIN1
=PhotoImage(file="images/npc/machin2.gif")

        FILLE0
=PhotoImage(file="images/npc/fille1.gif")
        FILLE1
=PhotoImage(file="images/npc/fille2.gif")

        MARIO0
=PhotoImage(file="images/npc/mario1.gif")
        MARIO1
=PhotoImage(file="images/npc/mario2.gif")

        LUIGI0
=PhotoImage(file="images/npc/luigi1.gif")
        LUIGI1
=PhotoImage(file="images/npc/luigi2.gif")

        BINOCLARE0
=PhotoImage(file="images/npc/binoclare1.gif")
        BINOCLARE1
=PhotoImage(file="images/npc/binoclare2.gif")

        CHELOU0
=PhotoImage(file="images/npc/chelou1.gif")
        CHELOU1
=PhotoImage(file="images/npc/chelou2.gif")


        dessine
()


       
#Sprites Perso
        machin
= boite.create_image(Xmachin, Ymachin, image=MACHIN1)
        fille
= boite.create_image(Xfille, Yfille, image=FILLE1)
        mario
= boite.create_image(Xmario, Ymario, image=MARIO1)
        luigi
= boite.create_image(Xluigi, Yluigi, image=LUIGI1)
        binoclare
= boite.create_image(Xbinoclare, Ybinoclare, image=BINOCLARE1)
        chelou
= boite.create_image(Xchelou, Ychelou, image=CHELOU1)

        sprite
= boite.create_image(Xp, Yp, image=PERSOB1)


        animation
()
       
Machin()
       
Fille()
       
Mario()
       
Luigi()
       
Binoclare()
       
Chelou()


        fenetre
.mainloop()
        winsound
.PlaySound("sons/blanc.wav", winsound.SND_ASYNC)
       
break

History