Tetris wpf

Soyez le premier à donner votre avis sur cette source.

Vue 14 971 fois - Téléchargée 1 870 fois

Description

C'est un simple jeu de tetris que j'ai fait dans le but d'expérimenter WPF. Toute l'interface est faite avec des balises XAML, jusqu'a la création des blocks et du fond d'écran du jeu. Le déplacement du bloc principale à la verticale est fait de manière fluide (et non bloc to bloc comme c'est souvent le cas). Il supporte les blocs spéciaux (qui servent à se sortir du pétrin), il y a un peu d'animation en XAML.

Tout est à votre disposition, sentez-vous libre d'en faire ce que vous voulez, si quelqu'un aurait envie de le reprendre pour l'améliorer qu'il ne se gêne point (Je dis ça car c'est déjà arrivé avec mon tetris en C et le résultat était plutôt intéressant ^^).

Le moteur de jeu est totalement indépendant de l'interface, théoriquement on pourrait passer à DirectX/Silverlight/etc... sans modifier le code.

Le son est également supporté, par contre cette partie de code à été désactivée avant l'envoie, certaines personnes ayant eu des difficultés avec la librairie FMod.DLL (dont un Blue Screen :S).

Source / Exemple :


//Visual C# 2008 Express SP1
//ZIP
/*................*/

Conclusion :


Toute remarque constructive est évidement la bienvenue

Vitesse en fonction du score (aurait pu augmenter plus rapidement ?)
Bloc spéciaux aléatoires

Touches :
Gauche, Droite : Déplacement
Haut : Rotation
Bas : Descente rapide
Espace : Instant drop
Z : Utiliser un special block (On ne choisit pas celui que l'on veut, sa serait trop facile)

Explication des specials blocks :
N (Nuke) - Vide complètement le jeu
CL (Clear Line) - Retire une ligne
B (Bar) - Donne une pièce de type #### comme prochaine
G (Gravity) - Comble tous les trous et élimine les nouvelles lignes pleines

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

ricklekebekoi
Messages postés
305
Date d'inscription
mardi 11 février 2003
Statut
Membre
Dernière intervention
24 avril 2009
4 -
Questions cons, j'avou ne pas avoir pris le temps de regarder le code pour m'auto répondre, mais sinon:

Comment on se sert des especes de bloc, et les lettres veuent dire quoi ?

La vitesse accelerre un jour ? Ou bien c parce que C'est fluide que j'ai pas eu limpression que ça accelerait ?

Merci :) Sinon il est bien joli :)
cs_Bidou
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
37 -
Joli jeu, bien fait! Fluide et conviviale (pas compris ce que c'était les bonus)
Par contre pour le code, j'avoue que j'ai été assez déçu...

- Euh, où sont les commentaires??? Un code (de plus pour la communauté) sans commentaire, ça vaut pas grand chose!
- Les conventions de nommages ont pas du tout été respectées, notemment pour les enums en MAJ, ça pique les yeux.
- Des classe EventArgs qui ne dérive pas de EventArgs ??
- Pour l'interface WPF, je suis tout sauf un pro mais j'ai l'impression que ça s'utilise pas trop comme ça. Tu ajoutes les cases manuellement (gridBoardGame.Children.Insert) et je pense plutôt que tu aurais dû utiliser du binding comme fais ici (http://www.csharpfr.com/codes/CUBE-IT-PETIT-JEU-WPF_49401.aspx). Cela dit, je ne suis pas sûr de ce que j'affirme sur ce point, c'est une éventuelle piste à creuser pour améliorer :)

Voilà en parcourant le code en diagonal, malheureusement j'ai pas assez de temps pour regarder en détail.
Donc au final, un bon jeu, mais peu mieux faire niveau code...
cs_max12
Messages postés
1496
Date d'inscription
dimanche 19 novembre 2000
Statut
Modérateur
Dernière intervention
7 juillet 2014
-
Je vais ajouter des explications pour les bonus, oui la vitesse augmente mais j'aurais peut-être du la faire augmenter plus vite (en fonction du score).

- Les conventions de nommages ont pas du tout été respectées, notemment pour les enums en MAJ, ça pique les yeux. <= Je ne suis pas sûr de bien comprendre.

- Des classe EventArgs qui ne dérive pas de EventArgs ?? <= Effectivement, je les avaient enlevé pour fin d'essaie et a dût oublier de les remettres, je vais faire un update du code quand je pourrai.

Concernant WPF j'avoue que j'avais un peu espérance que quelqu'un m'indique une meilleure marche à suivre en passant par là, car effectivement j'aurais préféré du 100% WPF mais pour faire un binding efficace sur 11*20 blocs je ne connais pas de méthode très éfficace.

Celà dit merci pour vos commentaires constructif.
SlimH2S
Messages postés
10
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
17 juin 2010
-
Félicitations, jeu de tétris très très bien fait ;-)
griffondorr
Messages postés
436
Date d'inscription
dimanche 6 juillet 2008
Statut
Membre
Dernière intervention
4 mai 2009
-
10 pour l'imagination et le code ;)
Commenter la réponse de griffondorr

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.