Bejeweled (diamand ou diamond mine)

Description

Il s'agit du célèbre jeu bejeweled (nommé diamand sur msn).

Le jeu :
Le but du jeu est d'aligner 3 diamants identiques en colonne ou en ligne, le joueur à le droit d'échanger 2 diamants directements accotés.
Lors d'une combinaison, tous les diamants identiques accotés à la combinaison sont éliminés, les diamants au-dessus tombent dans les cases vides et de nouveaux diamants (aléatoires) tombent sur les cases vides du haut du tableau.

Le code :
Le code génère une grille de diamant (de manière aléatoire), il autorise un déplacement d'une case (sauf diagonales).
Lors d'un déplacement, il vérifie que le déplacement engendre un alignement, dans quel cas il supprime les diamants concernées et génère de nouveaux diamants.
Il se peut que les diamants qui tombent recrés un alignement dans quel cas, un bonus est appliqué et le logiciel procède à la destruction et à la génération tant que la grille est instable (possède un alignement).
Une fois la grille stable, on vérifie qu'il existe au moins une possibilité de jeu pour créer un alignement, dans le cas contraire un message demande à l'utilisateur s'il souhaite regénérer une grille (avec un malus).
Le code utilise une matrice (stringgrid visuel) de nombre entier entre 1 et 7 qui correspond au symbole visuel de chaque diamant.
Ainsi chaque diamant est chargé dans un composant Canvas à fin de limiter les accès disques lors des changements de diamants.

Source / Exemple :


Le mémo et le stringgrid à droite ne font pas parti du jeu 
mais peuvent aider à comprendre le fonctionnement du programme.

Conclusion :


Avertissement:
    • Les images fournis dans le zip sont données à titre d'exemple,

elles peuvent être sousmises à des copyrights.
    • Le code est distribué pour aider les débutants en delphi, il ne doit pas être utilisé à des fins commerciales ou lucratives.

L'executable ne doit pas être séparé de sa source, et seul delphifr.com et le site de l'auteur sont abilités à le distribuer.

En téléchargeant cette source, vous acceptez les conditions ci-dessus.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (mystercoco)