Renaissance du Wave de Geometry Dash mais sur calculette !
Appuyez sur « OK » ou « EXE » pour monter et relâchez pour descendre. La “taille” de votre wave peut changer l’angle de descente ou de montée.
Il n’y a que 3 niveaux et 2 cartes. J’ai réussi à terminer tous les niveaux moi-mêmes (vidéo bientôt disponible dans mon youtube ‘Diage GD’).
Je n’ai conçu que les Hitboxes du premier niveau, si vous voulez jouer au deuxième et au troisième, essayez de ne pas toucher les pointes. Votre piste est la représentation de vos hitboxes. Je travaille sur la version complète de hitboxes ET 2 autres cartes/niveaux qui pourraient être incroyable ! 🔥 (Le codage des hitboxes posent quand même problème).
J’espère que vous allez vous amuser !
Niveaux et système :
Sur le menu : appuyez sur ‘1’, ‘2’ ou ‘3’ pour accéder à l’un des niveaux.
À un niveau : appuyez sur « EXE » ou « OK » pour interagir avec le wave.
- Niveau 1 et Carte 1 : (Difficulté facile)
- Niveau 2 et Carte 2 : (Difficulté Normale)
- Niveau 3 et Carte 2 : (Difficulté plus difficile)
Si vous ignorez ce que sont les CBF, je vous invite à chercher « Clicks Between Frame » sur internet, il y a des tas de vidéos qui expliquent bien le fonctionnement de ces choses là. Je ne perdrai pas mon temps à l’expliquer ici car je n’aurais pas assez de caractères (limite à 2048 caractères), et je ne suis moi-même pas sûr de leur fonctionnement.
Je travaille sur un Geometry Dash SHIP en parallèle.
Pour toutes suggestions ou questions, n’hésitez pas à me contacter à mon adresse mail pro : dasilvatiago77310@gmail.com
from math import * from turtle import * from random import * from kandinsky import * from ion import * from time import * def menu(): hideturtle() fill_rect(0,0,330,230,(0,0,0)) draw_string("Easy 1* - Press '1'",25,50,(255,255,255),(0,0,0)) draw_string("Hard 5* - Press '2'",25,75,(255,255,255),(0,0,0)) draw_string("Demon 10* - Press '3'",25,100,(255,255,255),(0,0,0)) while keydown(KEY_ONE)==False or keydown(KEY_TWO)==False or keydown(KEY_THREE)==False or keydown(KEY_FOUR)==False: if keydown(KEY_ONE)==True: map1() gameplay1() if keydown(KEY_TWO)==True: map2() gameplay2(1,1) if keydown(KEY_THREE)==True: map2() gameplay2(2,1) def up(size, gravity, speedy): if size==1: if gravity==1: setheading(45) forward(1*speedy) elif gravity==2: setheading(-45) forward(1*speedy) elif size==2: if gravity==1: setheading(70) forward(5*speedy) elif gravity==2: setheading(-70) forward(5*speedy) def down(size, gravity, speedy): if size==1: if gravity==1: setheading(-45) forward(1*speedy) elif gravity==2: setheading(45) forward(1*speedy) elif size==2: if gravity==1: setheading(-70) forward(5*speedy) elif gravity==2: setheading(70) forward(5*speedy) def gameplay1(): pensize(2) penup() showturtle() goto(-160,0) x,y=position() pendown() cl=0 click=0 fill_rect(140,100,40,20,(255,230,230)) while x<-20: if keydown(KEY_OK)==True or keydown(KEY_EXE)==True: up(2,1,1) cl=1 elif keydown(KEY_OK)==False and keydown(KEY_EXE)==False: down(2,1,1) if cl==1: cl=0 click=click+1 x,y=position() hitbox(1,x,y) while x>=-20 and x<160: if keydown(KEY_OK)==True or keydown(KEY_EXE)==True: up(1,1,1) cl=1 elif keydown(KEY_OK)==False and keydown(KEY_EXE)==False: down(1,1,1) if cl==1: cl=0 click=click+1 x,y=position() hitbox(1,x,y) if cl==1: cl=0 click=click+1 penup() score(click) menu() def gameplay2(difficulty,sp2): pensize(2) penup() showturtle() goto(-160,0) x,y=position() pendown() cl=0 click=0 fill_rect(150,100,30,30,(255,230,230)) spiked(140,95) spiked(170,95) spikeu(155,130) while x<160: if keydown(KEY_OK)==True or keydown(KEY_EXE)==True: up(difficulty,1,sp2) cl=1 elif keydown(KEY_OK)==False and keydown(KEY_EXE)==False: down(difficulty,1,sp2) if cl==1: cl=0 click=click+1 x,y=position() if cl==1: cl=0 click=click+1 penup() score(click) menu() def score(click): fill_rect(0,0,330,230,(0,0,0)) draw_string("Clicks: {}".format(click),50,100,(255,255,255),(0,0,0)) sleep(3) def spikeu(x,y): fill_rect(x+8,y-15,1,2,(255,0,0)) fill_rect(x+7,y-13,3,2,(225,0,0)) fill_rect(x+6,y-11,5,2,(200,0,0)) fill_rect(x+5,y-9,7,2,(175,0,0)) fill_rect(x+4,y-7,9,2,(150,0,0)) fill_rect(x+3,y-5,11,2,(125,0,0)) fill_rect(x+2,y-3,13,2,(100,0,0)) fill_rect(x+1,y-1,15,2,(75,0,0)) fill_rect(x,y,17,1,(50,0,0)) def spiked(x,y): fill_rect(x,y,17,1,(50,0,0)) fill_rect(x+1,y+1,15,2,(75,0,0)) fill_rect(x+2,y+3,13,2,(100,0,0)) fill_rect(x+3,y+5,11,2,(125,0,0)) fill_rect(x+4,y+7,9,2,(150,0,0)) fill_rect(x+5,y+9,7,2,(175,0,0)) fill_rect(x+6,y+11,5,2,(200,0,0)) fill_rect(x+7,y+13,3,2,(225,0,0)) fill_rect(x+8,y+15,1,2,(255,0,0)) def map1(): fill_rect(0,0,330,230,(255,230,230)) fill_rect(0,0,330,50,(0,0,0)) fill_rect(0,172,330,50,(0,0,0)) fill_rect(130,142,200,30,(0,0,0)) fill_rect(130,50,200,30,(0,0,0)) fill_rect(135,85,5,52,(0,255,100)) fill_rect(230,80,100,15,(0,0,0)) fill_rect(230,127,100,15,(0,0,0)) def map2(): fill_rect(0,0,330,230,(255,230,230)) fill_rect(0,0,330,95,(0,0,0)) fill_rect(0,130,330,100,(0,0,0)) #Spikes du haut spiked(20,95) spiked(50,95) spiked(80,95) spiked(110,95) spiked(140,95) spiked(170,95) spiked(200,95) spiked(230,95) spiked(260,95) spiked(290,95) spiked(320,95) #Spikes du bas spikeu(35,130) spikeu(65,130) spikeu(95,130) spikeu(125,130) spikeu(155,130) spikeu(185,130) spikeu(215,130) spikeu(245,130) spikeu(275,130) spikeu(305,130) #Deco #BAS spiked(35,130) spiked(65,130) spiked(95,130) spiked(125,130) spiked(155,130) spiked(185,130) spiked(215,130) spiked(245,130) spiked(275,130) spiked(305,130) #HAUT spikeu(20,95) spikeu(50,95) spikeu(80,95) spikeu(110,95) spikeu(140,95) spikeu(170,95) spikeu(200,95) spikeu(230,95) spikeu(260,95) spikeu(290,95) spikeu(320,95) def map3(): fill_rect(0,0,330,230,(255,230,230)) fill_rect(0,0,330,95,(0,0,0)) fill_rect(0,130,330,100,(0,0,0)) def dead(numap): penup() reset() if numap==1: map1() gameplay1() elif numap==2: map2() gameplay2(1,1) elif numap==3: map2() gameplay2(2,1) def hitbox(numap,x,y): if numap==1: if x<=-30 and y>=60: dead(numap) elif x<=-30 and y<=-60: dead(numap) elif x>=-30 and x<=70 and y>=30: dead(numap) elif x>=-30 and x<=70 and y<=-30: dead(numap) elif x>=70 and y>=15: dead(numap) elif x>=70 and y<=-15: dead(numap) menu()