Ceci est une ancienne révision du document !
Table des matières
Jeu dans le style de Candy-Crush
Présentation
La zone de jeu est une grille contenant des items (des bijoux, des fruits…) de différents types et répartis aléatoirement.
Le principe du jeu consiste à former des groupes d'items semblables. Quand ces groupes sont formés, ils disparaissent, les items du dessus tombent dans l'espace vacant. Éventuellement, on remplit l'espace formé en haut par de nouveaux groupes.
Pour les groupes et l'interaction souris, il existe différentes approches :
- parfois un groupe est une ligne d'au moins trois items semblables. Parfois c'est un groupe d'au moins 3 items connexes.
- parfois il suffit de cliquer sur un item pour provoquer la disparition du groupe correspondant, parfois la souris permet de déplacer des items et les groupes sont détectés automatiquement.
On gagne des points chaque fois que l'on élimine un groupe. Le jeu peut continuer indéfiniment ou bien jusqu'à ce qu'il n'y ait plus d'items ou bien au bout d'un certain temps ou encore au bout d'une certaine quantité d'items supprimés.
Vous l'avez compris, derrière le principe général, il y a beaucoup de choix à faire.
Faire des choix
- choisir des quelques images pour les différents types de gemmes - Les choisir de même taille ;
- choisir la taille de la grille (taille des cases, nombre de cases) ;
- choisir l'interface du jeu (comment joue-t-on ? par exemple faut-il cliquer ?) ;
- les gemmes rapportent-elles le même nombre de points ?
- les gemmes ont-elles toutes le même comportement ?
- que se passe-t-il quand on fait des gemmes disparaissent ?
- …
Les modules utiles
Le loader
Je vous propose un module tout fait pour le chargement d'image dans pygame : loader
Module pour un item
Dans pygame, chaque type de sprite doit correspondre à un objet défini dans un module.
Attention : dans notre jeu il y aura des items de types différents (banane, cerise, orange…) Ces différents items peuvent avoir des caractéristiques différentes (pas la même apparence, ne donnent pas le même nombre de points…) mais ils ont un fonctionnement globalement similaire.
Dans ce cas on définit un seul module pour tous les items en prévoyant des paramètres pour ajuster les caractéristiques individuelles.
Principal
Pour achever ce fonctionnement de base, j'ajoute le fichier principal qui contient beaucoup de choses difficiles quand on débute. C'est plus facile quand on a une base à comprendre et compléter.

