예제 #1
0
def miseEnPlaceMonstre():

    fen.ajouter("monstre", fen.can.create_image(750,650,image=Proc.choisirImageMonstre(), tag="monstre"))
    fen.can.tag_bind("monstre", "<Button-1>", lambda use : attaquerMonstre("DPC"))

    x=700
    y=450

    fen.ajouter("textePVMonstre", fen.can.create_text(x,y,text="PV : "+Proc.formatEcritureNombre(Const.ennemi.PV), font=Const.police2_30, fill="white", anchor="w", tag="textePVMonstre"))
예제 #2
0
def miseEnPlaceAffichageInfos():

    x,y=250,780

    fen.ajouter("stageTexte", fen.can.create_text(x,y,text="STAGE  :  "+str(Const.joueur.stage)+"."+str(Const.joueur.etape), font=Const.police2_30, fill="black", tag="stageTexte"))

    y-=50

    fen.ajouter("espritTexte", fen.can.create_text(x,y,text="Esprits : "+Proc.formatEcritureNombre(Const.joueur.esprit), font=Const.police2_30, fill="black", tag="espritTexte"))

    x=250
    y=50

    fen.ajouter("moneyTexte", fen.can.create_text(x,y,text="money :    "+Proc.formatEcritureNombre(Const.joueur.money), font=Const.police2_30, fill="black", tag="moneyTexte"))
예제 #3
0
def miseEnPlaceEsprit():

    xNomValue,yNomValue=250,130

    xPrix,yPrix=200,160

    xLvlUp,yLvlUp=470,150

    texte=["DPC actuel : +","DPS atcuel : +","Monnaie actuelle : +","Taux critique actuel : ","Esprits actuels : +"]

    for i in range (len(Const.joueur.espritBonus)) :

        tagNomValue=Const.listeBonus[i]+"_nomValue"

        tagPrix=Const.listeBonus[i]+"_prix"

        tagLvlUp=Const.listeBonus[i]+"_lvlUp"

        fen.ajouter(tagNomValue, fen.can.create_text(xNomValue,yNomValue, text=texte[i]+Proc.formatEcritureNombre(Const.joueur.espritBonus[Const.listeBonus[i]]-100)+"%", font=Const.police2_20, fill="black",tag=tagNomValue))

        niveauActuelEsprit=Const.joueur.espritNiveau[Const.listeBonus[i]]

        niveauLimiteEsprit=Const.joueur.espritLimiteNiveau[Const.listeBonus[i]]

        if niveauActuelEsprit<niveauLimiteEsprit or niveauLimiteEsprit==0:

            fen.ajouter(tagPrix, fen.can.create_text(xPrix,yPrix, text="Prix : "+Proc.formatEcritureNombre(Const.joueur.espritPrix[Const.listeBonus[i]]), font=Const.police2_20, fill="black", tag=tagPrix))

            fen.ajouter(tagLvlUp, fen.can.create_image(xLvlUp,yLvlUp, image=Const.fenetreDivers["lvlUp"], tag=tagLvlUp))

        yNomValue+=80

        yPrix+=80

        yLvlUp+=80

        binderBoutonLevelUpEsprit(tagLvlUp,Const.listeBonus[i],Const.joueur.modeLvlUp)
예제 #4
0
def miseEnPlaceServants():

    xImage,yImage=55,150

    xNomLvl,yNomLvl=255,130

    xLvlUp,yLvlUp=470,150

    xDegats,yDegats=230,160

    xPrix,yPrix=190,190

    xMultiplicateur,yMultiplicateur=360,190

    for i in range(len(Const.joueur.servants)) :

        nom=Const.joueur.servants[i].nom

        niveau=Const.joueur.servants[i].niveau

        status=Const.joueur.servants[i].status

        degats=Const.joueur.servants[i].degats

        prix=Const.joueur.servants[i].prix

        multiplicateur=Const.joueur.servants[i].multiplicateur

        imgServant=Const.servantsI[nom+".png"]

        tagImg="servant_"+str(nom)+"I"

        tagNom="servant_"+str(nom)+"nom"

        tagLvlUp="servant_"+str(nom)+"lvlUp"

        tagDegats="servant_"+str(nom)+"degats"

        tagPrix="servant_"+str(nom)+"prix"

        tagMultiplicateur="servant_"+str(nom)+"multiplicateur"

        fen.ajouter(tagImg, fen.can.create_image( xImage, yImage, image=imgServant, tag=tagImg))

        fen.ajouter(tagNom, fen.can.create_text( xNomLvl, yNomLvl, text=nom.upper()+"  LVL : "+str(niveau),  font=Const.police2_20, fill="black", tag=tagNom))

        fen.ajouter(tagLvlUp, fen.can.create_image( xLvlUp, yLvlUp, image=Const.fenetreDivers["lvlUp"], tag=tagLvlUp))

        fen.ajouter(tagDegats, fen.can.create_text( xDegats, yDegats, text=str(status)+" : "+Proc.formatEcritureNombre(degats),  font=Const.police2_20, fill="black", tag=tagDegats))

        fen.ajouter(tagPrix, fen.can.create_text( xPrix, yPrix, text="Prix : "+Proc.formatEcritureNombre(prix), font=Const.police2_20, fill="black", tag=tagPrix))

        fen.ajouter(tagMultiplicateur, fen.can.create_text(xMultiplicateur, yMultiplicateur, text="PowUp : x"+str(multiplicateur),  font=Const.police2_20, fill="black", tag=tagMultiplicateur))


        binderBouttonLevelUpServant(tagLvlUp,i,Const.joueur.modeLvlUp)

        yImage+=120

        yNomLvl+=120

        yLvlUp+=120

        yDegats+=120

        yPrix+=120

        yMultiplicateur+=120
예제 #5
0
def miseEnPlaceMenu():

    x,y=1250,770

    fen.ajouter("quitterJeu", fen.can.create_text(x,y,text="QUITTER", font=Const.police2_30, fill="white", tag="quitterJeu"))

    fen.can.tag_bind("quitterJeu", "<Button-1>", lambda use : quitterJeu())
    fen.can.tag_bind("quitterJeu", "<Enter>", lambda use : changerCouleurTexte("quitterJeu"))
    fen.can.tag_bind("quitterJeu", "<Leave>", lambda use : changerCouleurTexte("quitterJeu"))

    y-=70
    fen.ajouter("sauvegarderJeu", fen.can.create_text(x,y,text="SAUVEGARDER", font=Const.police2_30, fill="white", tag="sauvegarderJeu"))

    fen.can.tag_bind("sauvegarderJeu", "<Button-1>", lambda use : Proc.sauvegarderPartie())
    fen.can.tag_bind("sauvegarderJeu", "<Enter>", lambda use : changerCouleurTexte("sauvegarderJeu"))
    fen.can.tag_bind("sauvegarderJeu", "<Leave>", lambda use : changerCouleurTexte("sauvegarderJeu"))

    x,y=527,152

    fen.ajouter("menuServants", fen.can.create_image(x,y,image=Const.iconeMenuServantsI, tag="menuServants"))
    fen.can.tag_bind("menuServants", "<Button-1>", lambda use : changerLocalisationFenetre("jeuServants"))

    y+=100

    fen.ajouter("menuEsprit", fen.can.create_image(x,y,image=Const.iconeMenuEspritI, tag="menuEsprit"))
    fen.can.tag_bind("menuEsprit", "<Button-1>", lambda use : changerLocalisationFenetre("jeuEsprit"))

    y+=100

    fen.ajouter("menuWarp", fen.can.create_image(x,y,image=Const.iconeMenuWarpI, tag="menuWarp"))
    fen.can.tag_bind("menuWarp", "<Button-1>", lambda use : warp())

    x,y=120,690

    fen.ajouter("modeLevelUpTexte", fen.can.create_text(x,y,text="Mode de LvlUp : ",font=Const.police2_20,tag="modeLevelUpTexte"))

    x+=150

    fen.ajouter("modeLevelUpx1", fen.can.create_text(x,y,text="X1",font=Const.police2_20,tag="modeLevelUpx1"))
    fen.can.tag_bind("modeLevelUpx1", "<Button-1>", lambda use : changerModeLevelUp(1))

    x+=100

    fen.ajouter("modeLevelUpx10", fen.can.create_text(x,y,text="X10",font=Const.police2_20,tag="modeLevelUpx10"))
    fen.can.tag_bind("modeLevelUpx10", "<Button-1>", lambda use : changerModeLevelUp(10))

    x+=100

    fen.ajouter("modeLevelUpxmax", fen.can.create_text(x,y,text="Max",font=Const.police2_20,tag="modeLevelUpxmax"))
    fen.can.tag_bind("modeLevelUpxmax", "<Button-1>", lambda use : changerModeLevelUp("max"))
    
    changerCouleurTexteLevelUp(Const.joueur.modeLvlUp)
예제 #6
0
def changerLocalisationFenetre(nouvelleLocalisation):

    ## menu principal ##

    if Const.localisation == "menuPrincipal" :

        # Retour #

        if nouvelleLocalisation== "menuPrincipal" :

            fen.reinitialiserObjet()

            fen.ajouter("fontMenuPrincipal",fen.can.create_image(702,402,image=Const.fontMenuPrincipalI,tag="fontMenuPrincipal"))

            fen.ajouter("texteCommencer", fen.can.create_text(700,300,text="COMMENCER",font=Const.police1_20,fill="white",tag="texteCommencer"))
            fen.ajouter("texteCharger", fen.can.create_text(700,400,text="CHARGER",font=Const.police1_20,fill="white",tag="texteCharger"))
            fen.ajouter("texteQuitter", fen.can.create_text(700,500,text="QUITTER",font=Const.police1_20,fill="white",tag="texteQuitter"))

        else :

            if nouvelleLocalisation == "joueurCharge" :

                fen.detruire("retourMenuPrincipal")

            else :

                if "retourMenuPrincipal" not in fen.object.keys() :

                    fen.ajouter("retourMenuPrincipal", fen.can.create_text(700,400,text="RETOUR",font=Const.police1_20,fill="white",tag="retourMenuPrincipal"))

                    fen.can.tag_bind("retourMenuPrincipal", "<Button-1>", lambda use : changerLocalisationFenetre("menuPrincipal"))
                    fen.can.tag_bind("retourMenuPrincipal","<Enter>", lambda use : changerCouleurTexte("retourMenuPrincipal"))
                    fen.can.tag_bind("retourMenuPrincipal","<Leave>", lambda use : changerCouleurTexte("retourMenuPrincipal"))


        # commencer #

        if Const.menu == "menuPrincipal" and nouvelleLocalisation== "creerNouveauJoueurNom" :

            fen.detruire("texteCommencer")
            fen.detruire("texteCharger")

            fen.ajouter("zoneSaisieCompteNom", ZoneSaisie(fen, 400, 300, 1000, "NOM DU JOUEUR", 15))
            fen.fenetre.bind("<Return>", lambda use : creerNouveauJoueur())


        elif Const.menu == "creerNouveauJoueurNom" and nouvelleLocalisation== "creerNouveauJoueurMDP" :

            fen.object["zoneSaisieCompteNom"].destructionZoneSaisie()
            fen.fenetre.unbind_all("<Key>")
            fen.ajouter("zoneSaisieCompteMDP", ZoneSaisie(fen, 400, 300, 1000, "MDP DU JOUEUR", 15))
            fen.fenetre.bind("<Return>", lambda use : creerNouveauJoueur())


        elif Const.menu == "creerNouveauJoueurNom" and nouvelleLocalisation== "creerNouveauJoueurNom" :

            fen.object["zoneSaisieCompteNom"].destructionZoneSaisie()
            fen.fenetre.unbind_all("<Key>")
            fen.ajouter("zoneSaisieCompteNom", ZoneSaisie(fen, 400, 300, 1000, "NOM DEJA PRIS", 15))
            fen.fenetre.bind("<Return>", lambda use : creerNouveauJoueur())


        # joueur chargé #


        elif  nouvelleLocalisation== "joueurCharge" :

            if Const.menu == "creerNouveauJoueurMDP" :

                fen.object["zoneSaisieCompteMDP"].destructionZoneSaisie()
                fen.fenetre.unbind_all("<Key>")

            elif Const.menu == "chargerJoueurMDP" :

                fen.object["zoneSaisieChargerMDP"].destructionZoneSaisie()
                fen.fenetre.unbind_all("<Key>")

            nomJoueur=Const.joueur.nomJoueur

            fen.fenetre.unbind("<Return>")

            fen.ajouter("nomJoueurMenuPrincipal", fen.can.create_text(700,200,text="BIENVENUE "+nomJoueur.upper(),font=Const.police1_20,fill="white",tag="nomJoueurMenuPrincipal"))
            fen.ajouter("jouerMenuPrincipal", fen.can.create_text(700,400,text="JOUER",font=Const.police1_20,fill="white",tag="jouerMenuPrincipal"))

            fen.can.tag_bind("nomJoueurMenuPrincipal","<Enter>", lambda use : changerCouleurTexte("nomJoueurMenuPrincipal"))
            fen.can.tag_bind("nomJoueurMenuPrincipal","<Leave>", lambda use : changerCouleurTexte("nomJoueurMenuPrincipal"))

            fen.can.tag_bind("jouerMenuPrincipal", "<Button-1>", lambda use : lancementJeu())
            fen.can.tag_bind("jouerMenuPrincipal","<Enter>", lambda use : changerCouleurTexte("jouerMenuPrincipal"))
            fen.can.tag_bind("jouerMenuPrincipal","<Leave>", lambda use : changerCouleurTexte("jouerMenuPrincipal"))


        # charger joueur #

        elif Const.menu == "menuPrincipal" and nouvelleLocalisation== "chargerJoueurNom" :
            fen.detruire("texteCommencer")
            fen.detruire("texteCharger")

            fen.ajouter("zoneSaisieChargerNom", ZoneSaisie(fen, 400, 300, 1000, "NOM DU JOUEUR", 15))
            fen.fenetre.bind("<Return>", lambda use : chargerJoueur())


        elif Const.menu == "chargerJoueurNom" and nouvelleLocalisation== "chargerJoueurNom" :

            fen.object["zoneSaisieChargerNom"].destructionZoneSaisie()
            fen.fenetre.unbind_all("<Key>")
            fen.ajouter("zoneSaisieChargerNom", ZoneSaisie(fen, 400, 300, 1000, "NOM INVALIDE", 15))
            fen.fenetre.bind("<Return>", lambda use : chargerJoueur())


        elif Const.menu == "chargerJoueurNom" and nouvelleLocalisation== "chargerJoueurMDP" :

            fen.object["zoneSaisieChargerNom"].destructionZoneSaisie()
            fen.fenetre.unbind_all("<Key>")
            fen.ajouter("zoneSaisieChargerMDP", ZoneSaisie(fen, 400, 300, 1000, "MDP DU JOUEUR", 15))
            fen.fenetre.bind("<Return>", lambda use : chargerJoueur())


        elif Const.menu == "chargerJoueurMDP" and nouvelleLocalisation== "chargerJoueurMDP" :

            fen.object["zoneSaisieChargerMDP"].destructionZoneSaisie()
            fen.fenetre.unbind_all("<Key>")
            fen.ajouter("zoneSaisieChargerMDP", ZoneSaisie(fen, 400, 300, 1000, "MOT DE PASSE FAUX", 15))
            fen.fenetre.bind("<Return>", lambda use : chargerJoueur())


    elif Const.localisation=="jeu" :

        if Const.menu=="joueurCharge" :

            fen.reinitialiserObjet()

            fen.ajouter("fontJeu", fen.can.create_image(702,402,image=Const.fontsJeu[Proc.fontJeuIndex()], tag="fontJeu"))
            fen.ajouter("miseEnPlaceJeu", fen.can.create_image(702,402,image=Const.miseEnPlaceJeuI))

            miseEnPlaceMenu()
            miseEnPlaceMonstre()
            miseEnPlaceServants()
            miseEnPlaceAffichageInfos()
            process["DPS"].start()

        # changements graphiques des menus en jeu

        elif Const.menu== "jeuServants" and nouvelleLocalisation== "jeuEsprit" :

            effacerMenuServants()
            miseEnPlaceEsprit()

        elif Const.menu== "jeuEsprit" and nouvelleLocalisation== "jeuServants" :

            effacerMenuEsprit()
            miseEnPlaceServants()
            for i in range(len(Const.joueur.servants)):
                miseAJOurAffichageNiveauDegatsPrixMultiplicateurServant(i)

    Const.menu=nouvelleLocalisation
예제 #7
0
        while self.valueStop==0 :
            try :
                time.sleep(0.1)
                attaquerMonstre("DPS")
            except RuntimeError : self.valueStop=1



### ZONE DE DECLARATION DES DIFFERENTS PROCESS ###

process={"DPS":DPS()}

### MENU PRINCIPAL ###

fen.ajouter("fontMenuPrincipal",fen.can.create_image(702,402,image=Const.fontMenuPrincipalI,tag="fontMenuPrincipal"))

fen.ajouter("texteCommencer", fen.can.create_text(700,300,text="COMMENCER",font=Const.police1_20,fill="white",tag="texteCommencer"))
fen.ajouter("texteCharger", fen.can.create_text(700,400,text="CHARGER",font=Const.police1_20,fill="white",tag="texteCharger"))
fen.ajouter("texteQuitter", fen.can.create_text(700,500,text="QUITTER",font=Const.police1_20,fill="white",tag="texteQuitter"))
fen.ajouter("version", fen.can.create_text(700,780,text="VERSION : "+Const.version,font=Const.police1_10,fill="white"))

fen.can.tag_bind("texteCommencer","<Button-1>", lambda use : creerNouveauJoueur())
fen.can.tag_bind("texteCommencer","<Enter>", lambda use : changerCouleurTexte("texteCommencer"))
fen.can.tag_bind("texteCommencer","<Leave>", lambda use : changerCouleurTexte("texteCommencer"))

fen.can.tag_bind("texteCharger","<Button-1>", lambda use : chargerJoueur())
fen.can.tag_bind("texteCharger","<Enter>", lambda use : changerCouleurTexte("texteCharger"))
fen.can.tag_bind("texteCharger","<Leave>", lambda use : changerCouleurTexte("texteCharger"))

fen.can.tag_bind("texteQuitter","<Button-1>", lambda use :fen.destruction())