docs: update conversation history with custom mining system completion
This commit is contained in:
@@ -103,3 +103,42 @@
|
|||||||
| `next_respawn_at`| BIGINT | Timestamp du prochain respawn |
|
| `next_respawn_at`| BIGINT | Timestamp du prochain respawn |
|
||||||
|
|
||||||
* **Schéma PlantUML généré** : Enregistré dans `docs/mining_model.puml` et poussé sur le dépôt Gitea.
|
* **Schéma PlantUML généré** : Enregistré dans `docs/mining_model.puml` et poussé sur le dépôt Gitea.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 7. Implémentation Complète du Système de Minage (Custom Mining)
|
||||||
|
* **Couche Modèle (`fr.luc.gamingcore.mining.model`)** :
|
||||||
|
* [`OreRarity.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/model/OreRarity.java) : Raretés (`COMMON`, `UNCOMMON`, `RARE`, `EPIC`, `LEGENDARY`, `MYTHIC`) avec gradients MiniMessage.
|
||||||
|
* [`OreDrop.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/model/OreDrop.java) : Gestion des probabilités, multiplicateurs Fortune et auto-smelt (`XMaterial`).
|
||||||
|
* [`CustomOre.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/model/CustomOre.java) : Types de minerais (dureté, stock, réapparition, bloc temporaire).
|
||||||
|
* [`BlockLocation.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/model/BlockLocation.java) : Coordonnées immuables et hashables pour le cache mémoire.
|
||||||
|
* [`PlacedOreBlock.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/model/PlacedOreBlock.java) : État en temps réel des blocs actifs posés dans les mondes.
|
||||||
|
|
||||||
|
* **Couche Persistance SQLite (`fr.luc.gamingcore.mining.database`)** :
|
||||||
|
* [`DatabaseManager.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/database/DatabaseManager.java) :
|
||||||
|
* Création automatique des tables `ores`, `ore_drops`, `placed_ores`.
|
||||||
|
* Seeding automatique des minerais de base (`custom_iron`, `custom_gold`, `custom_diamond`, `custom_netherite`).
|
||||||
|
* Synchronisation asynchrone des états de minage / régénération.
|
||||||
|
|
||||||
|
* **Couche Métier & Tâches (`fr.luc.gamingcore.mining.manager`)** :
|
||||||
|
* [`OreManager.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/manager/OreManager.java) : Cache mémoire haute performance, gestion du minage, calcul des drops, sons/particules XSeries et action bars.
|
||||||
|
* [`RespawnScheduler.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/manager/RespawnScheduler.java) : Tâche répétée (1s) pour régénérer automatiquement les minerais épuisés avec particules et sons.
|
||||||
|
|
||||||
|
* **Événements & Sécurité (`fr.luc.gamingcore.mining.listener`)** :
|
||||||
|
* [`BlockBreakListener.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/listener/BlockBreakListener.java) : Interception du cassage, décrémentation du stock, transformation en bloc temporaire (`BEDROCK`) et drop personnalisé.
|
||||||
|
* [`BlockProtectionListener.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/listener/BlockProtectionListener.java) : Protection contre les explosions (TNT/Creeper) et les pistons.
|
||||||
|
|
||||||
|
* **Commandes & Outils d'Administration (`fr.luc.gamingcore.mining.command`)** :
|
||||||
|
* [`MiningCommand.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/main/java/fr/luc/gamingcore/mining/command/MiningCommand.java) : `/gamingcore` (alias `/gc`, `/mining`) avec sous-commandes :
|
||||||
|
* `/gc ore list` : Affiche les minerais configurés et leurs drops.
|
||||||
|
* `/gc ore set <ore_id>` : Définit le bloc ciblé comme un minerai personnalisé actif.
|
||||||
|
* `/gc ore remove` : Retire le minerai personnalisé du bloc ciblé.
|
||||||
|
* `/gc ore info` : Affiche les infos du minerai ciblé (stock restant, temps de respawn, etc.).
|
||||||
|
* `/gc reload` : Recharge la configuration et la BDD.
|
||||||
|
* Auto-complétion (TabCompletion) intégrale.
|
||||||
|
|
||||||
|
* **Tests Unitaires & Build** :
|
||||||
|
* Tests JUnit 5 passés avec succès ([`OreModelTest.java`](file:///C:/D%C3%A9veloppement/gamingcore/src/test/java/fr/luc/gamingcore/mining/OreModelTest.java)).
|
||||||
|
* Compilation ShadowJar validée (`gamingcore-1.0.0-SNAPSHOT.jar`).
|
||||||
|
* Code commité et synchronisé sur Gitea `origin/main`.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user