Commit Graph

12 Commits

Author SHA1 Message Date
Adrestie f14ce96caa ForeverUI : insigne JcJ à sa place, par-dessus le niveau
L'icône JcJ revient à la place de camelot 70450 (centrée en (17,6 ;
-62,8) du coin haut gauche du joueur, (-19,2 ; -62,8) du coin haut droit
de la cible), en gardant la taille pleine (24 x 27, l'icône chacun pour
soi à l'échelle 0,8), et passe par-dessus le cercle et le texte du
niveau : sur le joueur, un cadre fils un niveau au-dessus ; la cible
l'avait déjà.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-17 23:54:47 +02:00
Adrestie 8a9445b198 ForeverUI : insigne JcJ plus visible, au-dessus du niveau
Camelot 70450 pose l'icône JcJ à l'échelle 0,8 sous le cercle du niveau,
qui la masque en partie. À la demande de l'utilisateur, sur le joueur
comme sur la cible : taille pleine (24 x 27 ; l'icône chacun pour soi,
28 x 44, garde l'échelle 0,8) et posée juste au-dessus du cercle du
niveau, son bas à (17,6 ; -53) du coin haut gauche (cible : (-19,2 ; -53)
du coin haut droit).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-17 23:52:51 +02:00
Adrestie c994e4c16d ForeverUI : barres des cadres d'unité au-dessus de l'art
Les barres de vie et de ressource du joueur, de la cible, de la cible de
la cible et du familier étaient dans le calque BORDER, sous l'art du
cadre (ARTWORK). Les emplacements des barres de cet art sont un voile
sombre : noir à 40 % en 69893, brun à 74 % en 70450, qui recouvrait donc
les barres et les rendait très sombres. Camelot dessine ses barres
(StatusBar, cadres enfants) au-dessus de l'art : elles passent en
OVERLAY. Les cadres de groupe les avaient déjà dans un cadre enfant.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-17 23:06:49 +02:00
Adrestie 59d9b1565e ForeverUI : cadres d'unité de camelot 1.60.1.70450
Camelot 70450 donne une variante c60 à toutes les barres et à tous les
voiles des cadres d'unité, et réimplante leur planche (uiunitframec60,
256 x 512 -> 1024 x 512). Les planches uiunitframec60, uipartyframec60 et
uiroguecombopointsc60 de la 70450 (BGRA non compressé) remplacent ou
rejoignent celles de l'atelier ; UIAtlas_04 prend leurs régions
(feuilles 12 à 14), et les noms du groupe quittent UIAtlas_06.

- Joueur : vie (87, -43), ressource (87, -61), nom centré de 116 en
  (149, -37), voile de menace centré ; ordre combat, liste de haine, repos.
- Cible : barres identiques pour les créatures négligeables, vie (21, -41),
  ressource (17, -60), bandeau (-82, -26), nom centré, voile (-1, 1) ;
  cadre 194 x 68 (négligeable 163 x 57) par l'atlas.
- Insigne JcJ du joueur et de la cible : plus de cercle, l'icône seule à
  l'échelle 0,8, environ 7 px plus bas.
- Points de combo : l'arc de camelot (cinq points autour du portrait de la
  cible, rayon 39,6, de -10° par pas de 21°, depuis 2° avec l'insigne JcJ,
  remplis par le haut) remplace le ComboFrame du client.
- Cible de la cible et familier : vie (45, -17,5), ressource (43, -29,5),
  nom centré.
- Groupe : vie (47, -20), ressource (45, -31), nom (48, -7) de 55, rôle
  (-5, -7), voile (1, -1), statut (-1, -1) ; vie vide pour un membre
  déconnecté et mort.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-17 22:39:45 +02:00
Adrestie eb86f20abd ForeverUI : indicateur JcJ sur le cadre de cible
Repris de camelot (TargetFrameMixin:ShowPvPIcon, CheckFaction) : cercle
et emblème à l'échelle 0,8, le haut du cercle à (-23, -50) du coin haut
droit en unités réduites ; emblème « chacun pour soi » en zone libre,
emblème de faction pour une cible marquée JcJ. Comme dans camelot, le
badge passe sur le cercle du niveau (cadre fils un niveau au-dessus).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 14:26:59 +02:00
Adrestie 38be1ff724 ForeverUI : niveau doré pour une créature amicale
Le client juge une créature attaquable du seul point de vue du joueur :
une faction cochée « en guerre » au rang Amical passe pour attaquable, et
son « ?? » sortait en rouge. Seules les créatures neutres ou hostiles
envers le joueur prennent la couleur de difficulté ; les joueurs gardent
la règle du client.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 14:11:54 +02:00
Adrestie 20e276a042 ForeverUI : flèches de page cliquables, niveau de la cible coloré
Les flèches de page gardaient les retraits de zone cliquable du client
3.3.5 (6 et 7 px pour un bouton de 32 x 32) sur un bouton de 17 x 14 :
aucune zone ne restait cliquable. Elles n'en ont plus, comme celles de
camelot.

Le niveau d'une cible attaquable prend la couleur de sa difficulté
(GetQuestDifficultyColor, comme TargetFrame_CheckLevel), doré sinon ;
« ?? » prend la couleur la plus difficile. Recalculé sur UNIT_FACTION de
la cible et du joueur.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:32:49 +02:00
Claude 2d815b1132 ForeverUI : cadres d'unités, points de combo, véhicules, incantation, raid
Points de combo : ComboFrame, le seul affichage de 3.3.5, était supprimé
sans remplaçant ; voleurs et druides félins n'en voyaient aucun. Il est
gardé et posé sur notre portrait, au décalage de ComboFrame.xml.

Joueur en véhicule : les barres montrent "vehicle", mais seuls les
événements de "player" étaient lus ; la vie et l'énergie du véhicule se
figeaient (Oculus, Ulduar, Joug-d'hiver). Les textes suivent aussi.
Groupe : un membre sorti de son véhicule gardait le jeton partypetN, et son
cadre ne se mettait plus jamais à jour ; le test porte sur partyN, et le nom
est celui du membre, comme le client.

Barre d'incantation : STOP, FAILED et INTERRUPTED ne visent plus que
l'incantation affichée (son castID), comme CastingBarFrame : une touche
pressée de nouveau pendant un sort affichait « Échec » et effaçait la
vraie barre ; un sort instantané refusé montrait une barre rouge.

Cible de la cible : "targettarget" n'a aucun événement en 3.3.5 ; elle est
interrogée cinq fois par seconde tant qu'elle est montrée (le client le
fait à chaque image). Après un rechargement en combat, les cadres joueur et
cible du client sont masqués à la sortie du combat.

Raid : chaque événement d'unité reconstruisait tout le bouton (barres,
rôle, auras, onze icônes réancrées, une table allouée) ; santé, ressource,
auras et menace ne refont plus que leur partie, et les grilles d'auras ne
bougent que si le décalage des icônes de dissipation change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KxRZNHkq453dyUMcWsyUf1
2026-10-01 23:24:53 +00:00
Adrestie 5842eb7a2b ForeverUI : code en anglais, commentaires resserres, code mort retire
Traduction
- Identifiants en anglais dans tout le module : addon, ecrans d'accueil,
  outils Python, banc d'essai et patcheur C#.
- Fichiers au nom francais renommes (Gabarits.lua -> Templates.lua,
  Textes_*.lua -> Texts_*.lua, deployer.py -> deploy.py,
  tools/patcheur -> tools/patcher, etc.).
- Commandes /fui et options de deploy.py en anglais (--check, --server,
  --remove-dbc).
- Cles des variables sauvegardees et de data/dbc/statistics.json
  traduites, sans reprise des anciennes cles.
- API de la micro-barre : ForeverUI.AddMicroButton(def) avec les champs
  name, atlasSet, after, tooltip, onClick, ready, et
  ForeverUI.UpdateMicro(name, isOpen).
- Commentaires reecrits en anglais, courts, sans dates ni historique ;
  les fonctions au nom peu parlant et leurs parametres sont expliques.

Code mort
- Exports, fonctions et variables jamais lus retires.
- Retires a la demande des modules : ForeverUI.PvPJauge, les exports
  FondEntete / TuilerEntete / Polices de TradeSkill, l'art legacy-up-c60,
  honorfill(half)blue et inv_misc_book_09, leurs entrees d'atlas et les
  parties d'outils correspondantes.

Verifications : liaisons des noms comparees avant et apres, banc vert,
chemins de textures inchanges, generateurs reproduisant les fichiers,
patcheur identique octet pour octet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 09:15:52 +02:00
Adrestie eb681aa9cd Aucun texte en dur : anglais en base, francais, langues extensibles
- socle : Textes.lua (ForeverUI.L) et ForeverUIGlueTextes.lua (G.L) ; les
  textes dans Textes_enUS / Textes_frFR (325 cles en jeu) et
  ForeverUIGlueTextes_enUS / _frFR (41 cles aux ecrans d'accueil) ; une cle
  absente prend l'anglais, une langue sans fichier lit l'anglais ; ajouter
  une langue = un fichier de plus
- les textes que le client 3.3.5 connait se lisent dans ses globales
  (GlobalStrings, GlueStrings en glue) ; les textes de secours sont retires
- tous les fichiers repris : libelles, infobulles, mode edition, messages et
  aide de /fui, erreurs internes ; .toc : Notes + Notes-frFR
- selection des personnages : race et classe traduites ramenees a leur jeton
  par les tables de langue (GetAvailableRaces / GetAvailableClasses font
  planter le client hors de la creation)
- tools/cartes_instances.py : noms des instances dans toutes les langues de
  la LibBabble-Zone de WDM (portails de la carte sur tout client)
- banc : toute cle employee existe en anglais et en francais, memes cles dans
  les deux, bascule frFR / deDE essayee ; chaines 3.3.5 ajoutees au faux client
- README : etat des sections mis a jour, langues, glue, deploiement --glue

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 03:22:30 +02:00
Adrestie d110de1cbe Chat et barres d'auras a la DA de camelot ; plus aucune globale du client ecrite par l'addon
- Chat : cadre, barre et bouton de retour, colonne, bouton d'amis de camelot ;
  au repos fond, onglets, colonne et saisie s'effacent, allumage au survol
- Barres d'ameliorations et d'affaiblissements (Buffs.lua) : grille, bordures
  par type, clignotement, repli, regroupement, enchantements d'arme
- Souillure : StaticPopupDialogs n'est plus reaffectee (BindEnchant bloque) ;
  menus deroulants, suivi des objectifs, choix d'icone, ajout de canal et
  carte du monde n'ecrivent plus les globales du client ; menus d'unite :
  lignes protegees servies par des boutons securises hors combat, grisees en
  combat ; seule MAP_QUEST_DIFFICULTY reste, par decision
- Gestionnaire d'ensembles : plus d'appel GetEquipmentSetIconInfo(nil)
- Banc : garde des globales ecrites (bytecode Lua 5.1), faux client durci

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26 18:36:19 +02:00
Adrestie 115de7ed41 Add mod-forever-ui: the modern interface rebuilt for a 3.3.5a client
The addon and the art it needs, read from a modern client and served to
3.3.5 through texture coordinates, since that client has no atlas.

What is in place: player frame with its states, death knight runes, target
frame and its classification rings, cast bar, action bar with its page block
and end caps, micro menu, bags bar, experience and reputation bars. Every
piece registers itself as a movable system.

This folder is the workspace. The addon in a client and the art in patch-Z
are copies tools/deployer.py makes, and what sits under Interface\ForeverUI
in the patch is exactly what data/art holds -- the deployer removes from the
archive anything this folder no longer carries. Each .blp comes with the .png
that shows what it holds.

docs/AMELIORATIONS.md lists what is known to be improvable: where the
reproduction departs from the reference and why, what the 2010 client cannot
do, and the debts left in the tooling.

The repository README also gains the row for mod-limit-break, which was
written earlier and had not been committed.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-21 20:12:09 +02:00