68 lines
3.5 KiB
Markdown
68 lines
3.5 KiB
Markdown
# beta.025 — barres d’expérience des compétences
|
||
|
||
Ticket sur `codex/skill-xp-bars-beta025`.
|
||
|
||
## Affichage
|
||
|
||
Dans **Blocodex → Progression**, les six compétences gardent chacune leur ligne :
|
||
icône, nom, grande barre d’XP, retrait opérateur et achat. La barre utilise les
|
||
sprites Minecraft `hud/experience_bar_background` et `hud/experience_bar_progress` :
|
||
le resource pack peut donc modifier ensemble ce rendu et celui du HUD.
|
||
|
||
Le prix du prochain achat en **niveaux** apparaît au centre, avec le nombre vert
|
||
et le contour noir du compteur d’expérience natif. Il reste visible sans XP ;
|
||
le bouton **+** apparaît lorsque l’achat est possible. Une barre complète n’affiche
|
||
plus de prix ni de texte « Max ». Le bouton **−** opérateur rembourse toujours
|
||
le prix effectivement payé pour le dernier rang.
|
||
|
||
Le remplissage représente les paliers de compétence, indépendamment de l’XP
|
||
disponible. Le palier initial occupe une part : `(rang + 1) / (plafond + 1)`.
|
||
Ainsi toutes les barres commencent légèrement remplies, y compris Minage et
|
||
Construction, puis avancent à chaque achat. Le survol explique ce principe et
|
||
conserve le détail de la capacité et du prochain effet, en français et en anglais.
|
||
|
||
La barre prend la largeur restante de la ligne. Les noms longs peuvent défiler
|
||
sur une petite interface ; leur infobulle conserve le nom et les capacités.
|
||
Le panneau des aptitudes garde son défilement indépendant.
|
||
|
||
## Portée
|
||
|
||
Affichage uniquement : prix, progression serveur, remboursements, prestige,
|
||
protocole et sauvegardes restent identiques. L’inventaire garde **six rangées** ;
|
||
un palier supplémentaire reste une idée à discuter. Aucun monde existant n’est
|
||
modifié. JEI et l’optimisation du chargement de beta.024 sont conservés.
|
||
|
||
## Vérifications et livraison
|
||
|
||
`./gradlew check build assemblePack -PsanctuaryFocusedTests=progression,inventory,cycle`
|
||
réussit : **24 tests serveur** et les contrôles de contrat du projet passent.
|
||
|
||
Le parcours graphique natif dédié réussit avec :
|
||
|
||
```sh
|
||
./gradlew :sanctuary:runClientGameTest -PsanctuaryClientTests=true \
|
||
-PsanctuarySkillsClientTests=true
|
||
```
|
||
|
||
Six barres alignées en français/anglais, GUI 1, 2 et automatique, fenêtre de
|
||
640 × 480 et défilement jusqu’à l’Inventaire. Achat réel du dernier rang refusé
|
||
à 47 niveaux puis accepté à 48, remboursement opérateur exact, barres pleines
|
||
sans nouvel achat et retour entre onglets. Les dix captures ont été inspectées ;
|
||
elles sont conservées dans `build/skills025-evidence/`.
|
||
Le test fixe explicitement l’XP à zéro après l’admission, car les Premiers pas
|
||
peuvent déjà en avoir donné. Le client de développement a nécessité de désactiver
|
||
sa VSync après un blocage OpenGL au démarrage ; aucun réglage personnel modifié.
|
||
|
||
L’export est contrôlé : ZIP, version interne, JAR et 1 253 classes identiques au
|
||
build, dépendances Demeure/JEI imbriquées identiques, absence de classes de test.
|
||
Seuls l’écran Progression et le nouveau composant de barre changent dans le code
|
||
compilé Sanctuary par rapport à beta.024. Les autres classes, notamment les règles
|
||
de progression, l’inventaire et le terrain, sont identiques. Le MRpack beta.024
|
||
conserve son empreinte.
|
||
|
||
[Sanctuary-beta.025.mrpack](../build/Sanctuary-beta.025.mrpack), **4 765 821 octets**.
|
||
SHA-256 : `0601841b46da38656c00a2f88a690883b9066e886af7b0a3ba6df7677bae0ef7`.
|
||
Reçu : `build/skills025-artifact.json`. Journaux : `build/skills025-check.log`
|
||
et `build/skills025-client.log`. Export local ; canal packwiz et installation
|
||
Prism personnelle non modifiés.
|