Étape 4: Conception de niveau procédurale
Il est évidemment pas possible de concevoir des niveaux pour un défilement infini jeux à l’avance. Vous devez arriver à l’algorithme de génération de terrain.
Voici les exigences de mon algorithme avec que je suis venu :
Écran doit commencer à vide (avec rien d’autre que le joueur à ce sujet) et obstacles doivent commencer à défilement de droite. Chaque fois l’écran défile, un nouvel obstacle doit être ajouté. Il peut être ajouté en haut ou bas de ligne mais le joueur doit être capable d’éviter l’abordage alors chaque fois que la ligne de l’obstacle se déplace d’une ligne à l’autre, une colonne vide doit apparaître. Parce que nous voulons joueur de réagir immédiatement, il est toujours indiqué qu’une cellule de temps à se déplacer ainsi pas plus d’une colonne vide doit apparaître un après l’autre.
Tout d’abord, j’ai codé cet algorithme en python car il est très facile à déboguer et beaucoup plus facile à comprendre par rapport au code C. D’ailleurs si vous comprenez comment et pourquoi cela fonctionne en python, vous pouvez écrire en C aussi bien.
Si vous ne savez pas ce qu’au-dessus de script python fait, essayez de l’exécuter et voir ce qui se passe. C’est simple, et vous devriez être capable de le comprendre rapidement.
Ensuite, j’ai traduit ce code C et utilisé certaines opérations bit comme optimisation. Il ne faut pas les utiliser, vous pouvez facilement omettre qu’et s’en tenir à des opérations de tableau.
C’est tout au sujet du niveau de génération. Cette fonction (sans déclaration de variable) est appelée à chaque fois l’écran défile. Après terrain écran de génération est redessiné.
16 x 2 game.py