Logan BRAGA - Claire DELAYE - Marie NUEL
BreakInvaders est un mini-jeu réalisé dans le cadre du projet PixelArt (Cours Gestion de Projet) de l'IUT MMI du Puy-en-Velay, promotion 2013-2014.
Site support du projet : [breakinvaders.loganbraga.fr] (http://breakinvaders.loganbraga.fr)
NOTE : Le projet est encore en phase de développement et toutes les fonctionnalités peuvent ne pas être implémentées.
BreakInvaders est un mélange entre le traditionnel casse-briques et le non moins célèbre Space Invaders. Le but est de réussir à obtenir le plus haut score, en éliminant les briques. Mais attention, elles peuvent se défendre !
Dès le début de la partie, déplacez votre palette afin de rattraper la balle, et visez les briques. Si la balle tombe, c'est perdu... Enfin, après 3 essais ! Garre aux murs, qui peuvent vous renvoyer la balle avec force...
Pour chaque brique cassée, votre score est incrémenté. Les points que rapportent chaque brique sont calculés selon leur position : plus la brique est dure à atteindre, et plus elle vous rapportera de points. Le nombre de vies restant en fin de partie vous accorde un bonus de points : les vrais survivants sont bien évidemment récompensés... Les lâches, aussi, puisque vous faire toucher par un missile diminue votre score ! Ne criez pas victoire trop vite non plus ; les briques noires sont là pour vite vous faire retomber sur terre...
![ScreenShot] (https://raw.githubusercontent.com/loganbraga/breakinvaders/master/Website/assets/img/main_affiche.png)
![ScreenShot] (https://raw.githubusercontent.com/loganbraga/breakinvaders/master/Website/assets/img/affiche2.png)
- Lancer le jeu
- Espace
- Quitter le jeu
- Echap
- Q
- Relancer la partie
- R
- Mettre en pause
- Espace
- P
- Activer/désactiver le mode Nuit
- N
- Déplacer la palette
- Gauche
- Flèche gauche, Flèche haut, H, J
- Droite
- Flèche droite, Flèche bas, K, L
- Gauche
Seules les fonctionnalités notables sont listées ici. (Liste non-exhaustive)
- Mode nuit
- Briques générées aléatoirement
- Briques noires : briques super solides !
- Génération aléatoire de la position de la palette à chaque tour
- Génération aléatoire de la position de la balle à chaque tour
- Génération dynamique des constructions
- Personnalisation facile des images du jeu (briques, balle et palette)
- Personnalisation des styles par fichiers CSS
- Objets bonus
- Sauvegarde des scores en local
- Portabilité
git clone https://github.com/loganbraga/BreakInvaders.git
cd BreakInvaders
qmake
make
Vous devez disposer du paquet QtCreator pour la commande qmake
, et de make
d'installé.
En quel langage BreakInvaders est-il développé ?
Le mini-jeu est développé en C++11
, avec la bibliothèque graphique Qt4
.
En combien de temps a-t-il été développé ?
Il a été développé en une vingtaine d'heures.
Et tout a été fait de A à Z ?
Non ! Le squelette du jeu a été réalisé grâce au tutorial de ZetCode.
Et comment ça marche, tout ça ?
Grosso-modo, on se sert d'un objet balle
, d'un objet palette
, d'une multitude d'objets briques
, et d'un objet général pour accueillir le jeu.
La balle est en déplacement constant sur les axes X et Y ; elle change de direction lorsqu'elle rencontre les limites de la fenêtre, une brique ou la palette.
Lorsqu'une brique est touchée par la balle, on lui passe sa propriété destroyed
(détruite) à vrai
; toutes les briques dont la propriété destroyed
est à vrai
ne sont pas dessinées lors du prochain rafraichissement de l'interface.
Un compteur compte le nombre de briques détruites pour calculer les points et savoir quand s'arrêter.
Si la position Y de la balle passe sous la position Y de la palette, elle est considérée comme perdue : on réinitialise la balle et la palette, et on décrémente le compteur de vies. Si ce compteur atteint 0, on lance la défaite.
Quelle est l'architecture du projet ?
- include/
- ball.hpp
- breakinvaders.hpp
- brick.hpp
- paddle.hpp
- score.hpp
- src/
- data/
- scores.brknvdrs
- images/
- ball.png
- BreakInvaders.png
- brick.png
- brick_black.png
- paddle.png
- ball.cpp
- breakinvaders.cpp
- brick.cpp
- main.cpp
- paddle.cpp
- score.cpp
- data/
- BreakInvaders.pro
- LICENCE
- README.mdown
- .gitignore
Licence WTFPL ((do) What The Fuck (you want to) Public Licence).
CF fichier LICENCE
pour plus d'informations.
- Développement mini-jeu par Logan BRAGA
- Logo, charte et identité graphique par Claire DELAYE
- Hébergement par Marie NUEL
- Développement site support par Marie NUEL, Claire DELAYE et Logan BRAGA