Bienvenue sur le site dédié a notre projet en ISN,
consacré au développement d'un puissance 4.
Le projet est un puissance 4 un peut spécial nottamment par
des fonctionnalités "avancés" que vous pourrez entrevoir.
Cahier des charges
- Le jeu classique du puissance 4
- Une interface graphique permettant de parametrer le jeu
- Une possibilité de jouer en réseau avec un utilisateur a distance
- Une possibilité de discuter via un chat en réseau
- Un jeu contre l'ordinateur (Bot)
- Une possibilité de jouer au morpion
- Un score dans un onglet dédiée
- Des menus pour avoir une interface parfaite
Développement :
Date | Avancement |
---|---|
16/04 | Création et développement du site internet, création du plateau de jeu et détection du clic (java) |
29/04 | Développement de l'interface graphique, afficher le jeu avec codage pixel |
30/04 | Intégration des paramètres du "puissance 4" dans l'interface graphique, détection du clic sur le jeu |
01/05 | Alignement des composants de l'interface graphique, intégration du codage pixel dans javaprog pour faire fonctionner avec le GUI. |
02/05 | Amélioration graphique des onglets, détection des tours du puissance 4 |
03/05 | Commencement de l'onglet chat, détection du gagnant |
07/05 | Développement du site internet, création du bot |
21/05 | Chat fonctionelle en réseau et amélioration du bot |
22/05 | Amélioration de l'interface graphique, création de cheat code pour gagner automatiquement |
23/05 | Rajout de Jradiobouton pour choisir entre le serveur et le client pour jouer en réseau, rassemblement entre nos codes |
25/05 | Modification de l'onglet score (ajout de "l'historique des parties"), correction et optimisation du jeu |
26/05 | Création du menu de l'interface et de ces sous menus, essai de faire communiquer le jeu en réseau |
Les fonctions :
Les principales fonctions
Nom de la fonction | Description |
---|---|
void jeu() | Appel toute les fonction pour permettre le jeu |
void bot() | Permet de generer des coordonées aléatoire pour jouer l'ordinateur |
void quadrillage() | Génere la grille du jeu (codage Pixel) |
void placerJeton((int ligne, int colonne, String couleur)) | Fonction qui permet de placer le jeton ou le joueur a cliqué |
void testGagnant()) | Fonction qui permet de detecter le gagnant et d'arreter le jeu. |
void checkJeuFull() | Permet de savoir quand la grille est remplie |
void envoyerCoordonne (int coordonee []) | Permet d'envoyer des coordonné pour le jeu en réseau |
recevoirCoordonee() | Lance le thread pour recevoir les coordonee pour le jeu en réseau |
Les principales variables
Nom de la fonction | Description |
---|---|
int LARGEUR | Valeur de la largeur de la fenêtre du Puissance 4 |
int HAUTEUR | Valeur de la hauteur de la fenêtre du Puissance 4 |
int PORT | Port utilisé dans le réseau |
String IP_Adversaire | IP de l'adversaire |
int CARREAU | Taille d'un carreau de la grille du puissance 4 |
boolean partieFinie | Permet de savoir lorsque la partie est terminée |
boolean clic | Permet de savoir lorsque un joueur a cliqué |
int tour | Permet de savoir les tours |
int [] pionJoue | Tableau contenant les coordonnées du dernier pion joué (pour l'IA) |
boolean jeuGo | Permet de lancer le jeu |
JTextArea textArea | Permet l'affichage du chat |
JTextArea scoreTextArea | Permet l'affichage de l'historique des scores |
boolean preskVertical | Permet la détection de 3 pions aligné verticalement (idem pour toute les direction ) |
boolean connecte | Détecte la connexion du joueur en réseau |
Les principales classes
Nom de la fonction | Description |
---|---|
class RecevoirMessage | Permet la réception d'un message via le chat |
class TabbedPane | Permet l'affichage des onglets et du menu avec les sous menus. |
class ChatPanel | Permet la création de l'onglet Chat |
class envoyerBoutonListener | Permet écoute de bouton et d'agir en conséquence |
class Fenetre | Affichage de tout les paramètres dans des cases définies |
Public class ScorePanel | Affichage de l'onglet Score |
Public class Progress | Barre de chargement avant le lancement du jeu |
Le partage des tâches
Comment on s'est répartit les tâches :
Stan | Sami |
---|---|
Création du site internet | Affichage du jeu puissance 4 : afficher le jeu (codagepixels) |
Création de l'onglet "Score" | Placement des carrés après le clic |
Interface graphique en Java(pur) pour paramétrer les choix du puissance 4 | Moteur du jeu : toute les fonctions (quand 4carrés alignés, les tours, détecter le gagnant) |
Création de l'interface Chat | Fonction pour jouer en réseau sur le jeu |
Fonction pour parler sur le chat | Fonction pour jouer sur le même pc avec un ami |
Avoir un menu composé de sous menus dans l'interface | Fonction pour jouer avec un Bot |