push
This commit is contained in:
Executable → Regular
@@ -0,0 +1,130 @@
|
|||||||
|
SHELL := /usr/bin/env bash
|
||||||
|
.SUFFIXES:
|
||||||
|
|
||||||
|
OUT := build
|
||||||
|
MAIN_CLASS := Main
|
||||||
|
|
||||||
|
MODELE_BASE = \
|
||||||
|
src/modele/Couleur.java \
|
||||||
|
src/modele/ModeDeJeu.java \
|
||||||
|
src/modele/Coup.java
|
||||||
|
|
||||||
|
MODELE_ECHIQUIER = \
|
||||||
|
src/modele/Case.java \
|
||||||
|
src/modele/Plateau.java \
|
||||||
|
src/modele/piece/Piece.java \
|
||||||
|
src/modele/piece/Pion.java \
|
||||||
|
src/modele/piece/Tour.java \
|
||||||
|
src/modele/piece/Cavalier.java \
|
||||||
|
src/modele/piece/Fou.java \
|
||||||
|
src/modele/piece/Reine.java \
|
||||||
|
src/modele/piece/Roi.java
|
||||||
|
|
||||||
|
RESEAU_TYPES = \
|
||||||
|
src/reseau/TypeMessage.java \
|
||||||
|
src/reseau/MessageJeu.java
|
||||||
|
|
||||||
|
VUE_BASE = \
|
||||||
|
src/vue/Vue.java \
|
||||||
|
src/vue/VueConsole.java
|
||||||
|
|
||||||
|
JOUEURS = \
|
||||||
|
src/modele/joueur/Joueur.java \
|
||||||
|
src/modele/joueur/IA.java \
|
||||||
|
src/modele/joueur/JoueurHumain.java \
|
||||||
|
src/modele/joueur/JoueurIA.java
|
||||||
|
|
||||||
|
PARTIE = \
|
||||||
|
src/modele/Partie.java
|
||||||
|
|
||||||
|
VUE_SWING = \
|
||||||
|
src/vue/CaseSwingUI.java \
|
||||||
|
src/vue/PlateauSwingUI.java \
|
||||||
|
src/vue/ButtonEnvoyerMessageListener.java \
|
||||||
|
src/vue/ToucheEntrerEnvoyerMessageListener.java \
|
||||||
|
src/vue/VueGraphiqueSwing.java
|
||||||
|
|
||||||
|
CONTROLEURS_RESEAU = \
|
||||||
|
src/controleur/ControleurReseau.java \
|
||||||
|
src/controleur/ControleurPartie.java \
|
||||||
|
src/reseau/Client.java \
|
||||||
|
src/reseau/Serveur.java
|
||||||
|
|
||||||
|
MAIN = \
|
||||||
|
src/Main.java
|
||||||
|
|
||||||
|
MODELE_BASE_OUT := $(OUT)/modele/Coup.class
|
||||||
|
MODELE_ECHIQUIER_OUT := $(OUT)/modele/piece/Roi.class
|
||||||
|
RESEAU_TYPES_OUT := $(OUT)/reseau/MessageJeu.class
|
||||||
|
VUE_BASE_OUT := $(OUT)/vue/VueConsole.class
|
||||||
|
JOUEURS_OUT := $(OUT)/modele/joueur/JoueurIA.class
|
||||||
|
PARTIE_OUT := $(OUT)/modele/Partie.class
|
||||||
|
VUE_SWING_OUT := $(OUT)/vue/VueGraphiqueSwing.class
|
||||||
|
CONTROLEURS_RESEAU_OUT := $(OUT)/controleur/ControleurPartie.class
|
||||||
|
MAIN_OUT := $(OUT)/Main.class
|
||||||
|
|
||||||
|
.PHONY: all modele reseau vue joueurs partie controleurs run clean rebuild count-files count-lines stats
|
||||||
|
|
||||||
|
all: $(MAIN_OUT)
|
||||||
|
|
||||||
|
modele: $(MODELE_ECHIQUIER_OUT)
|
||||||
|
|
||||||
|
reseau: $(RESEAU_TYPES_OUT)
|
||||||
|
|
||||||
|
vue: $(VUE_SWING_OUT)
|
||||||
|
|
||||||
|
joueurs: $(JOUEURS_OUT)
|
||||||
|
|
||||||
|
partie: $(PARTIE_OUT)
|
||||||
|
|
||||||
|
controleurs: $(CONTROLEURS_RESEAU_OUT)
|
||||||
|
|
||||||
|
$(OUT):
|
||||||
|
mkdir -p "$(OUT)"
|
||||||
|
|
||||||
|
$(MODELE_BASE_OUT): $(MODELE_BASE) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(MODELE_BASE)
|
||||||
|
|
||||||
|
$(MODELE_ECHIQUIER_OUT): $(MODELE_ECHIQUIER) $(MODELE_BASE_OUT) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(MODELE_ECHIQUIER)
|
||||||
|
|
||||||
|
$(RESEAU_TYPES_OUT): $(RESEAU_TYPES) $(MODELE_BASE_OUT) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(RESEAU_TYPES)
|
||||||
|
|
||||||
|
$(VUE_BASE_OUT): $(VUE_BASE) $(MODELE_BASE_OUT) $(MODELE_ECHIQUIER_OUT) $(RESEAU_TYPES_OUT) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(VUE_BASE)
|
||||||
|
|
||||||
|
$(JOUEURS_OUT): $(JOUEURS) $(MODELE_BASE_OUT) $(MODELE_ECHIQUIER_OUT) $(VUE_BASE_OUT) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(JOUEURS)
|
||||||
|
|
||||||
|
$(PARTIE_OUT): $(PARTIE) $(MODELE_BASE_OUT) $(MODELE_ECHIQUIER_OUT) $(JOUEURS_OUT) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(PARTIE)
|
||||||
|
|
||||||
|
$(VUE_SWING_OUT): $(VUE_SWING) $(MODELE_BASE_OUT) $(MODELE_ECHIQUIER_OUT) $(RESEAU_TYPES_OUT) $(VUE_BASE_OUT) $(JOUEURS_OUT) $(PARTIE_OUT) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(VUE_SWING)
|
||||||
|
|
||||||
|
$(CONTROLEURS_RESEAU_OUT): $(CONTROLEURS_RESEAU) $(MODELE_BASE_OUT) $(RESEAU_TYPES_OUT) $(VUE_BASE_OUT) $(JOUEURS_OUT) $(PARTIE_OUT) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(CONTROLEURS_RESEAU)
|
||||||
|
|
||||||
|
$(MAIN_OUT): $(MAIN) $(VUE_SWING_OUT) $(CONTROLEURS_RESEAU_OUT) | $(OUT)
|
||||||
|
javac -cp "$(OUT)" -d "$(OUT)" $(MAIN)
|
||||||
|
|
||||||
|
run: $(MAIN_OUT)
|
||||||
|
java -cp "$(OUT)" $(MAIN_CLASS)
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf "$(OUT)"
|
||||||
|
|
||||||
|
rebuild: clean all
|
||||||
|
|
||||||
|
count-files:
|
||||||
|
find src -type f -name '*.java' | wc -l
|
||||||
|
|
||||||
|
count-lines:
|
||||||
|
find src -type f -name '*.java' -exec cat {} + | wc -l
|
||||||
|
|
||||||
|
stats:
|
||||||
|
@printf "Fichiers Java: "
|
||||||
|
@find src -type f -name '*.java' | wc -l
|
||||||
|
@printf "Lignes Java: "
|
||||||
|
@find src -type f -name '*.java' -exec cat {} + | wc -l
|
||||||
@@ -1,92 +1,38 @@
|
|||||||
# CHESS
|
# CHESS
|
||||||
|
|
||||||
Implémentation d’un jeu d’échecs en Java (IUT de Fontainebleau).
|
Projet Java de jeu d'echecs realise dans le cadre de l'IUT de Fontainebleau.
|
||||||
|
|
||||||
## Dépôts
|
|
||||||
- **Forge de l’IUT** : `https://forge-fac.example.com/mon-orga/CHESS.git`
|
|
||||||
- **GitHub** : `https://github.com/Gaston667/CHESS.git`
|
|
||||||
|
|
||||||
## Commandes Git
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# 1. Cloner le dépôt depuis la fac
|
|
||||||
git clone https://forge-fac.example.com/mon-orga/CHESS.git
|
|
||||||
cd CHESS
|
|
||||||
|
|
||||||
# 2. Ajouter GitHub comme remote supplémentaire
|
|
||||||
git remote add github https://github.com/Gaston667/CHESS.git
|
|
||||||
|
|
||||||
# 3. Vérifier les remotes
|
|
||||||
git remote -v
|
|
||||||
|
|
||||||
# 4. Récupérer les dernières modifications depuis la fac
|
|
||||||
git fetch origin
|
|
||||||
git pull origin main
|
|
||||||
|
|
||||||
# 5. Ajouter et committer des changements
|
|
||||||
git add .
|
|
||||||
git commit -m "Message du commit"
|
|
||||||
|
|
||||||
# 6. Pousser les changements vers la fac ET GitHub
|
|
||||||
git push origin main
|
|
||||||
git push github main
|
|
||||||
|
|
||||||
# 7. Pousser toutes les branches et tags (première synchro)
|
|
||||||
git push origin --all
|
|
||||||
git push github --all
|
|
||||||
git push origin --tags
|
|
||||||
git push github --tags
|
|
||||||
|
|
||||||
# 8. Créer et pousser une nouvelle branche
|
|
||||||
git checkout -b nouvelle-branche
|
|
||||||
git push origin nouvelle-branche
|
|
||||||
git push github nouvelle-branche
|
|
||||||
|
|
||||||
# 9. Resynchroniser les deux dépôts (mise à jour complète)
|
|
||||||
git fetch --all --prune
|
|
||||||
git push origin --all
|
|
||||||
git push github --all
|
|
||||||
git push origin --tags
|
|
||||||
git push github --tags
|
|
||||||
|
|
||||||
|
## Resume du projet
|
||||||
|
CHESS est une implementation d'un jeu d'echecs organisee en architecture MVC :
|
||||||
|
- modele : regles metier (plateau, pieces, coups, joueurs, partie)
|
||||||
|
- vue : affichage console et interface graphique Swing
|
||||||
|
- controleur : orchestration de la boucle de jeu et integration reseau
|
||||||
|
- reseau : echange de messages entre client et serveur pour une partie en ligne
|
||||||
|
|
||||||
|
Le point d'entree est `src/Main.java`.
|
||||||
|
|
||||||
|
## Fonctionnalites actuelles
|
||||||
|
- gestion du plateau et des pieces
|
||||||
|
- validation des deplacements de base via les classes de pieces
|
||||||
|
- suivi de l'historique des coups
|
||||||
|
- suivi des captures et affichage d'un score simple
|
||||||
|
- mode console et mode graphique Swing
|
||||||
|
- squelette de jeu en reseau (client/serveur + messages)
|
||||||
|
|
||||||
|
## Structure
|
||||||
|
```text
|
||||||
src/
|
src/
|
||||||
├── modele/ Couche Modèle (logique du jeu)
|
Main.java
|
||||||
│ ├── Partie.java
|
modele/
|
||||||
│ ├── Plateau.java
|
controleur/
|
||||||
│ ├── Case.java
|
vue/
|
||||||
│ ├── Coup.java
|
reseau/
|
||||||
│ ├── Couleur.java enum
|
```
|
||||||
│ ├── ModeDeJeu.java enum
|
|
||||||
│ ├── piece/
|
## Lancer le projet
|
||||||
│ │ ├── Piece.java abstraite
|
Prerequis : JDK installe (commande `javac` disponible).
|
||||||
│ │ ├── Roi.java
|
|
||||||
│ │ ├── Reine.java
|
|
||||||
│ │ ├── Tour.java
|
|
||||||
│ │ ├── Cavalier.java
|
## Depot
|
||||||
│ │ ├── Fou.java
|
Remote principal : `https://grond.iut-fbleau.fr/dialloa/CHESS.git`
|
||||||
│ │ └── Pion.java
|
|
||||||
│ ├── joueur/
|
|
||||||
│ │ ├── Joueur.java abstraite
|
|
||||||
│ │ ├── JoueurHumain.java
|
|
||||||
│ │ ├── JoueurIA.java
|
|
||||||
│ │ └── IA.java
|
|
||||||
│
|
|
||||||
├── vue/ Couche Vue (console ou graphique)
|
|
||||||
│ ├── Vue.java interface
|
|
||||||
│ ├── VueConsole.java
|
|
||||||
│ ├── VueGraphique.java
|
|
||||||
│
|
|
||||||
├── controleur/ Couche Contrôleur
|
|
||||||
│ ├── ControleurPartie.java
|
|
||||||
│ └── ControleurReseau.java
|
|
||||||
│
|
|
||||||
├── reseau/ Réseau (mode en ligne)
|
|
||||||
│ ├── MessageJeu.java
|
|
||||||
│ ├── TypeMessage.java enum
|
|
||||||
│ ├── Serveur.java
|
|
||||||
│ └── Client.java
|
|
||||||
│
|
|
||||||
└── Main.java Point d'entrée du jeu
|
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user