runes.py

Created by cent20

Created on January 05, 2025

9.27 KB

En attente - Lire le mail. M’envoyer le texte.


from ion import keydown
from kandinsky import *
from random import randint
from time import *
liste_cartes = 0
perdu = 0
nb_pas = 160
def sol_grotte(x,y): #is 1
    fill_rect(x*9,1+y*9,8,8,"#784212")
def herbe(x,y): #is 2
    fill_rect(x*9,1+y*9,8,8,"#609B41")
def rocher_dehors(x,y): #is 3
    fill_rect(x*9,1+y*9,8,8,"#424949")
def rocher_grotte(x,y):#is 4
    fill_rect(x*9,1+y*9,8,8,"#641E16")
def eau_dehors(x,y):#is 5
    fill_rect(x*9,1+y*9,8,8,"#0000FF")
def eau_grotte(x,y):#is 6
    fill_rect(x*9,1+y*9,8,8,"#403AAF")
def danger_sol(x,y): #is 7
    fill_rect(x*9,1+y*9,8,8,"#000000")
matrice_x = []
matrice_y = []
for v in range(36):
    matrice_x.append(v)
for i in range(22):
    matrice_y.append(i)
corrdone = [2,2]
coo_carte1 =[]
coo_carte2 =[]
coo_carte3 =[]
coo_carte4 =[]
coo_carte5 =[]
def position_carte(tab):
    global coo_carte1, coo_carte2, coo_carte3, coo_carte4, coo_carte5
    coo_carte1 =[8,13]
    coo_carte2 =[17,4]
    coo_carte3 =[9,24]
    coo_carte4 =[20,34]
    coo_carte5 =[17,28]
    
def font_ecran_generer(tab):
    for i in range(22):
        for v in range(36):
            if tab[i][v] == 1:
                sol_grotte(matrice_x[v],matrice_y[i])
            elif tab[i][v] == 2:
                herbe(matrice_x[v],matrice_y[i])
            elif tab[i][v] == 3:
                rocher_dehors(matrice_x[v],matrice_y[i])
            elif tab[i][v] == 4:
                rocher_grotte(matrice_x[v],matrice_y[i])
            elif tab[i][v] == 5:
                eau_dehors(matrice_x[v],matrice_y[i])
            elif tab[i][v] == 6:
                eau_grotte(matrice_x[v],matrice_y[i])
def joeur(tab):
    fill_rect(tab[0]*9,1+tab[1]*9,8,8,"#FFFFFF")
carte_appa = [[3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],
              [3,2,2,2,2,2,7,2,2,2,2,2,2,2,2,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3],
              [3,2,2,2,2,2,2,2,7,2,2,2,7,2,7,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3],
              [3,2,7,3,3,3,3,3,3,3,3,3,3,2,2,3,3,3,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,3],
              [3,2,2,2,7,2,2,2,2,2,2,2,3,7,2,2,2,2,2,2,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3],
              [3,7,2,2,2,2,2,7,2,2,2,2,3,2,2,7,2,2,2,2,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3],
              [3,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,7,3,3,3,3,3,3,3,3,3,3,2,2,3],
              [3,5,5,7,5,5,5,7,5,5,7,5,5,5,5,7,5,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,2,2,3],
              [3,7,5,5,7,5,5,7,5,5,7,5,7,5,5,7,5,3,7,5,5,7,5,5,7,5,5,7,5,5,7,5,3,2,2,3],
              [3,5,5,5,5,5,5,7,5,5,7,5,5,7,5,5,5,3,5,5,7,5,7,5,5,7,5,5,7,5,5,5,3,2,2,3],
              [3,5,5,7,5,7,5,5,5,5,7,5,5,5,5,5,5,3,7,5,5,5,5,5,7,5,5,5,5,5,5,5,3,2,2,3],
              [3,7,5,5,5,5,5,5,5,7,5,5,5,5,5,5,7,3,5,5,7,5,7,5,5,5,5,7,5,5,5,5,3,2,2,3],
              [3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,3],
              [4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,6,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,6,4],
              [4,6,6,6,6,6,6,6,4,6,6,6,6,6,6,6,4,6,6,6,6,6,6,6,6,1,1,1,1,1,1,1,4,6,6,4],
              [4,6,1,1,1,1,1,6,4,6,1,1,1,1,1,6,4,6,1,1,1,1,1,6,6,1,6,6,6,6,6,1,4,1,6,4],
              [4,6,1,1,1,1,1,6,4,6,1,1,1,1,1,6,4,6,1,1,1,1,1,6,6,1,6,6,6,6,6,1,4,1,6,4],
              [4,6,1,1,1,1,1,6,6,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,6,6,6,6,6,1,1,1,6,4],
              [4,6,1,1,1,1,1,1,1,1,1,1,1,1,1,6,4,6,1,1,1,1,1,6,6,1,6,6,6,6,6,1,4,1,6,4],
              [4,6,1,1,1,1,1,6,6,6,1,1,1,1,1,6,4,6,1,1,1,1,1,6,6,1,6,6,6,6,6,1,4,1,6,4],
              [4,6,6,6,6,6,6,6,4,6,6,6,6,6,6,6,4,6,6,6,6,6,6,6,6,1,1,1,1,1,1,1,4,6,6,4],
              [4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4],]
def test(i,v):
    global carte_appa
    if carte_appa[i][v] == 1:
        sol_grotte(matrice_x[v],matrice_y[i])
    elif carte_appa[i][v] == 2:
        herbe(matrice_x[v],matrice_y[i])
    elif carte_appa[i][v] == 3:
        rocher_dehors(matrice_x[v],matrice_y[i])
    elif carte_appa[i][v] == 4:
        rocher_grotte(matrice_x[v],matrice_y[i])
    elif carte_appa[i][v] == 5:
        eau_dehors(matrice_x[v],matrice_y[i])
    elif carte_appa[i][v] == 6:
        eau_grotte(matrice_x[v],matrice_y[i])
def mouvement_gauche():
    if keydown(0) :
        if carte_appa[corrdone[1]][corrdone[0]-1] != 3 and carte_appa[corrdone[1]][corrdone[0]-1] != 4:
            test(corrdone[1],corrdone[0])
            corrdone[0] = corrdone[0] -1
            joeur(corrdone)
            crono()
def mouvement_droite():
    if keydown(3):
        if carte_appa[corrdone[1]][corrdone[0]+1] != 3 and carte_appa[corrdone[1]][corrdone[0]+1] != 4:
            test(corrdone[1],corrdone[0])
            corrdone[0] = corrdone[0] +1
            joeur(corrdone)
            crono()
def mouvement_haut():
    if keydown(1) :
        if carte_appa[corrdone[1]-1][corrdone[0]] != 3 and carte_appa[corrdone[1]-1][corrdone[0]] != 4:
            test(corrdone[1],corrdone[0])
            corrdone[1] = corrdone[1] -1
            joeur(corrdone)
            crono()
def mouvement_bas():
    if keydown(2) :
        if carte_appa[corrdone[1]+1][corrdone[0]] != 3 and carte_appa[corrdone[1]+1][corrdone[0]] != 4:
            test(corrdone[1],corrdone[0])
            corrdone[1] = corrdone[1] +1
            joeur(corrdone)
            crono()
def game_over():
    global liste_cartes
    for y in range(40):
        for x in range(60):
            fill_rect(x*6,y*6,6,6,(randint(0,10),randint(0,254),randint(0,10)))
            sleep(0.0001)
    draw_string("GAME OVER", randint(1,200),randint(0,200),"#FFFFFF","#000000")
    return None
def toucher_danger():
    global corrdone, liste_cartes,perdu
    if carte_appa[corrdone[1]][corrdone[0]] == 7:
        perdu = 1
        liste_cartes = 5
def toucher_de_carte():
    global corrdone,coo_carte1,coo_carte2,coo_carte3,coo_carte4,coo_carte5,liste_cartes
    if coo_carte1[0] == corrdone[1] and coo_carte1[1] == corrdone[0]:
        fill_rect(204,202,16,16,"#FF0000")
        coo_carte1 = [-2,-2]
        liste_cartes +=1
    if coo_carte2[0] == corrdone[1] and coo_carte2[1] == corrdone[0]:
        fill_rect(225,202,16,16,"#FFFF00")
        coo_carte2 = [-20,-20]
        liste_cartes +=1
    if coo_carte3[0] == corrdone[1] and coo_carte3[1] == corrdone[0]:
        fill_rect(246,202,16,16,"#00FFFF")
        coo_carte3 = [-20,-20]
        liste_cartes +=1
    if coo_carte4[0] == corrdone[1] and coo_carte4[1] == corrdone[0]:
        fill_rect(267,202,16,16,"#FF00FF")
        coo_carte4 = [-20,-20]
        liste_cartes +=1
    if coo_carte5[0] == corrdone[1] and coo_carte5[1] == corrdone[0]:
        fill_rect(288,202,16,16,"#00FFFF")
        coo_carte5 = [-20,-20]
        liste_cartes +=1
def mouvement2(matrice_j):
    global corrdone,zone
    # Déplacement gauche
    if carte_appa[corrdone[1]][corrdone[0]] != 0:
        toucher_de_carte()
        mouvement_gauche()
        mouvement_droite()
        mouvement_haut()
        mouvement_bas()
def genere_carte():
    global coo_carte1,coo_carte2,coo_carte3,coo_carte4,coo_carte5
    fill_rect(coo_carte1[1]*9,1+coo_carte1[0]*9,8,8, "#FF0000")
    fill_rect(coo_carte2[1]*9,1+coo_carte2[0]*9,8,8, "#FFFF00")
    fill_rect(coo_carte3[1]*9,1+coo_carte3[0]*9,8,8, "#00FFFF")
    fill_rect(coo_carte4[1]*9,1+coo_carte4[0]*9,8,8, "#FF00FF")
    fill_rect(coo_carte5[1]*9,1+coo_carte5[0]*9,8,8, "#00FFFF")
def intro():
    trolle = 0
    txt1 = "FIND THE RUNE"
    fill_rect(0,0,360,222,"#000000")
    for y in range(40):
        for x in range(60):
            fill_rect(x*6,y*6,6,6,(randint(0,254),randint(0,10),randint(0,10)))
    draw_string(txt1, 20+(len(txt1)*10)//2,20,"#FFFFFF","#000000")
    draw_string("trouve les runes",50,100,"#FFFFFF","#000000")
    draw_string("tu as un nombre de pas limité",5,130,"#FFFFFF","#000000")
    draw_string("ne touche pas ça:", 50,150,"#FFFFFF","#000000")
    fill_rect(220,150,18,18,"#000000")
    draw_string("presse fleche du haut ", 50,200,"#FFFFFF","#000000")
    while trolle ==0:
        if keydown(1):
            trolle +=1
            jeu()
def jeu():
    fill_rect(0,0,320,222,"#000000")
    font_ecran_generer(carte_appa)
    position_carte(carte_appa)
    txt = "Carte du Joueur:"
    draw_string(txt, 42, 200,"#FFFFFF","#000000")
    fill_rect(202,200,20,20,"#FFFFFF")
    fill_rect(223,200,20,20,"#FFFFFF")
    fill_rect(244,200,20,20,"#FFFFFF")
    fill_rect(265,200,20,20,"#FFFFFF")
    fill_rect(286,200,20,20,"#FFFFFF")
    draw_string(str(nb_pas),0,200,"#FFFFFF","#000000")
    while liste_cartes !=5:
        toucher_danger()
        if perdu == 0:
            joeur(corrdone)
            toucher_de_carte()
            genere_carte()
            mouvement2(carte_appa)
            sleep(0.2)
    if perdu == 0:
        finn()
    else:
        game_over()
def finn():
    text = "FIN DU JEUX"
    ttt = "tu as trouvé les runes"
    tm = "merci d'avoir jouer <3"
    for y in range(40):
        for x in range(60):
            fill_rect(x*6,y*6,6,6,(randint(0,30),randint(0,10),randint(0,254)))
            sleep(0.0001)
    draw_string(text, 50+(len(text)*10)//2,18,"#FFFFFF","#000000")
    draw_string(ttt,55,60,"#FFFFFF","#000000")
    draw_string("la gloire te tent la mains",30,100,"#FFFFFF","#000000")
    draw_string(tm,50,198,"#FFFFFF","#000000")
def crono():
    global nb_pas, liste_cartes, perdu
    nb_pas -= 1
    fill_rect(0,200,40,40,"#000000")
    draw_string(str(nb_pas),0,200,"#FFFFFF","#000000")
    if nb_pas == 0:
        liste_cartes = 5
        perdu = 1
intro()

During your visit to our site, NumWorks needs to install "cookies" or use other technologies to collect data about you in order to:

With the exception of Cookies essential to the operation of the site, NumWorks leaves you the choice: you can accept Cookies for audience measurement by clicking on the "Accept and continue" button, or refuse these Cookies by clicking on the "Continue without accepting" button or by continuing your browsing. You can update your choice at any time by clicking on the link "Manage my cookies" at the bottom of the page. For more information, please consult our cookies policy.