PureTris !

Programmation avancée de jeux en PureBasic
Avatar de l’utilisateur
Mindphazer
Messages : 694
Inscription : mer. 24/août/2005 10:42

PureTris !

Message par Mindphazer »

Bonjour à tous,
après avoir vu le film "Tetris" sur AppleTV (si vous avez l'occasion de le voir, je vous le recommande !), et comme j'avais un peu de temps, j'ai développé un petit Tetris.
C'est sans prétention, certainement perfectible, mais ça fonctionne...
Pour ceux qui comme moi on passé des heures (et dépensé beaucoup de francs) à y jouer, j'ai essayé de refaire le Tetris original (nostalgie !!)
Ca se joue au clavier exclusivement :
Flèche gauche : déplace la pièce à gauche
Flèche droite : déplace à lpièce à droite
Flèche bas : descend la pièce d'une ligne
Flèche haut : rotation (antihoraire) de la pièce
A : rotation (sens horaire) de la pièce
Espace : fait tomber la pièce
P : pause
Q : Arrête la partie
N : Nouvelle partie
C : hold

Le jeu a été développé à la base sur MacOS, et est fonctionnel sur Windows. Pas d'API, donc y'a pas de raison que ça ne fonctionne pas sur Linux, mais j'ai pas testé
J'utilise des polices de caractères qui ne sont pas forcément installées sur tous les ordis, du coup il y aura peut-être des adaptations à faire à ce niveau

Update : Mise à jour 1.0.2 avec quelques améliorations et la possibilité de mettre le jeu en pause (touche P)
Update : Mise à jour 1.0.4
Update : Mise à jour 1.0.8 :
Une nouvelle version de PureTris a vu le jour
Au programme, quelques améliorations internes et des modification visuelles.
Des sons ont été ajoutés, qu'il est possible d'activer en cochant "Sons". Dans ce cas, il faut au préalable charger la bibliothèque de sons.
Si les sons ne sont pas chargés, PureTris fonctionnera quand même !
- Tous les textes sont désormais inclus en DataSection, pour faciliter la gestion multilingue.
Il suffit de positionner la variable "Lang" avec le code pays ("FRA", "ENG", "ITA", "ESP", Etc...), et de créer un DataSection "TextesLANG:" en remplaçant "LANG" par le code pays
Par défaut, tout est en français
- Il est désormais possible de faire une rotation horaire de la piece (touche A)
- Il n'y a plus de fichier .pbf à inclure. Le formulaire est désormais inclus dans le source principal
- La touche Q permet de quitter une partie en cours
- Le calcul de l'augmentation de la vitesse en fonction du niveau a été modifié, le jeu était injouable aux niveaux élevés ! La temporisation diminue de 10% à chaque changement de niveau
- La distribution aléatoire des pièces a été revue de façon à ce que les statistiques soient uniformes pour chaque pièce (impossible d'avoir 3 fois de suite la même pièce)

Update : Mise à jour 1.1.0 (22 juillet) :
- plus de statistiques (personne ne les regarde :mrgreen: )
- L'ombre est désactivable
- Le temps de jeu est sauvegardé
- Possibilité de "hold" une pièce (avec la touche C)

Update : Mise à jour 1.1.1 (24 juillet) :
Puretris détermine la langue tout seul, plus besoin de renseigner une variable

Le source est trop gros pour être publié en une fois, mais il peut être téléchargé ici :
https://workupload.com/file/4qvGLwsZ5Wf
Dernière modification par Mindphazer le lun. 24/juil./2023 11:30, modifié 12 fois.
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Avatar de l’utilisateur
Guillot
Messages : 672
Inscription : jeu. 25/juin/2015 16:18

Re: PureTris !

Message par Guillot »

sympa

pourquoi t'as separé le code en 2 ?
Avatar de l’utilisateur
Mindphazer
Messages : 694
Inscription : mer. 24/août/2005 10:42

Re: PureTris !

Message par Mindphazer »

Merci !
Bah j'utilise le Form Designer, du coup j'ai mis le source en séparé, si quelqu'un veut faire ses propres modifications...
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Avatar de l’utilisateur
Mindphazer
Messages : 694
Inscription : mer. 24/août/2005 10:42

Re: PureTris !

Message par Mindphazer »

J'ai corrigé quelques bugs gênants (étonnamment, ils n'étaient présents que sous Windows, pas sous MacOS, c'est pourquoi je ne les avais pas remarqués)
J'ai également apporté quelques améliorations (statistiques, ombre de la pièce pour voir où elle sera positionnée lorsqu'elle tombera)
Je suis toujours à la recherche de bugs, mais j'espère qu'il n'en reste que très peu.
Premier post mis à jour
Attention, le form a aussi été modifié, donc n'oubliez pas de copier le formulaire et la source (j'ai la flemme d'insérer le formulaire à l'intérieur de la source !)
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: PureTris !

Message par Kwai chang caine »

Joli jeu :D
Comme j'y connais pas grand chose, mais j'ai apprécié la prévisualisation du module en bas
Merci pour le partage 8)
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
Mindphazer
Messages : 694
Inscription : mer. 24/août/2005 10:42

Re: PureTris !

Message par Mindphazer »

Salut KCC
merci !
Ça fait plaisir de te lire :)
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Avatar de l’utilisateur
Guillot
Messages : 672
Inscription : jeu. 25/juin/2015 16:18

Re: PureTris !

Message par Guillot »

cette fois c'est nickel
mais tu m'a fais encore fais perdre 20mn avec ton jeu ! :lol:
Avatar de l’utilisateur
Mindphazer
Messages : 694
Inscription : mer. 24/août/2005 10:42

Re: PureTris !

Message par Mindphazer »

Je suis désolé, vraiment :mrgreen: :D
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Avatar de l’utilisateur
Mindphazer
Messages : 694
Inscription : mer. 24/août/2005 10:42

Re: PureTris !

Message par Mindphazer »

Une nouvelle version de PureTris a vu le jour
Au programme, quelques améliorations internes et des modification visuelles.
Des sons ont été ajoutés, qu'il est possible d'activer en cochant "Sons". Dans ce cas, il faut au préalable charger la bibliothèque de sons.
Si les sons ne sont pas chargés, PureTris fonctionnera quand même !
- Tous les textes sont désormais inclus en DataSection, pour faciliter la gestion multilingue.
Il suffit de positionner la variable "Lang" avec le code pays ("FRA", "ENG", "ITA", "ESP", Etc...), et de créer un DataSection "TextesLANG:" en remplaçant "LANG" par le code pays
Par défaut, tout est en français
- Il est désormais possible de faire une rotation horaire de la piece (touche A)
- Il n'y a plus de fichier .pbf à inclure. Le formulaire est désormais inclus dans le source principal
- La touche Q permet de quitter une partie en cours
- Le calcul de l'augmentation de la vitesse en fonction du niveau a été modifié, le jeu était injouable aux niveaux élevés ! La temporisation diminue de 10% à chaque changement de niveau
- La distribution aléatoire des pièces a été revue de façon à ce que les statistiques soient uniformes pour chaque pièce (impossible d'avoir 3 fois de suite la même pièce)

Premier post mis à jour
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Avatar de l’utilisateur
Mindphazer
Messages : 694
Inscription : mer. 24/août/2005 10:42

Re: PureTris !

Message par Mindphazer »

Update : Mise à jour 1.1.0 :
- plus de statistiques
- L'ombre est désactivable
- Le temps de jeu est sauvegardé
- Possibilité de "hold" une pièce (avec la touche C)

Premier post mis à jour
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Répondre