Les boutons bonus sont ancrés à la glissière, ce qui la rend protégée :
en combat, ses SetPoint étaient bloqués (action bloquée par image). Après
un retrait hors combat elle reposait 45 px plus bas, et un druide prenant
une forme en combat gardait sa barre à moitié sous l'écran tout le combat.
Elle ne bouge plus en combat, attend au repos, y revient avant le
verrouillage, et suit une barre réaffichée pendant son propre retrait.
Durée : BONUSACTIONBAR_SLIDETIME du client (0,15 s).
Familier et postures : le porteur, protégé par les boutons qu'on y ancre,
était masqué avant le test de combat (familier mort ou expiré en combat :
action bloquée). Le test passe d'abord ; la sortie de combat le replace.
Choix d'icône d'un ensemble : une icône portée deux fois (deux anneaux,
bijoux ou armes identiques) ne compte qu'une fois, comme
RefreshEquipmentSetIconInfo, sinon la grille gagnait des cases vides au
delà de la liste du client.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KxRZNHkq453dyUMcWsyUf1
Bottom Left / Bottom Right côte à côte au-dessus des barres d'expérience
et de réputation (à +22 et +606 du bord gauche de la barre principale),
postures et familier remontés d'un rang quand elles s'y trouvent ;
Right / Right 2 debout contre le bord droit, RIGHT (-5, -77). Douze
boutons de 45, écart 2, dans la strate de la barre principale (le 3.3.5
les mettait en HIGH, devant fenêtres et sacs), retenues dans l'écran,
déplaçables et redimensionnables en mode d'édition ; le 3.3.5 ne les
replace plus. Rien n'est disposé en combat.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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>
- 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>
Les icones paraissaient legerement trop petites. La cause n'est pas leur
taille -- 30, celle de la source -- mais l'ancrage du cadre : la source
l'ancre en TOPLEFT, ce qui tombe juste sur le grand bouton (46 x 45 sur
45 x 45, centre a un demi-pixel pres) mais decale le petit de 2,5, un cadre
de 35 debordant de 5 sur un bouton de 30.
Le trou du cadre, mesure sur l'art (element 47 x 46, bordure opaque de 5 px
a gauche, 4 a droite, 6 en haut, 5 en bas), vaut 26,6 une fois le cadre
ramene a 35. Centre, il tombe dans l'icone de 30 avec 1,7 de marge partout ;
decale, il en sortait d'un cote et mordait l'icone de l'autre.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Relevee de mainline/StanceBar.xml, shared/StanceBar.lua et du petit bouton
d'action (SmallActionButtonTemplate, SmallActionButtonMixin) :
bouton 30 x 30, ecart 2, pas de 32, une rangee, 10 au plus, vers la droite
cadre normal et enfonce en 35 x 35, OVERLAY, TOPLEFT
survol, coche, bordure et eclat en 31,6 x 30,9 ; le coche est le survol
en melange ADD
emplacement vide = -IconFrame-Background + -IconFrame-Slot
raccourci TOPRIGHT (-3, -4), quantite BOTTOMRIGHT (-3, 1)
recharge en retrait de l'icone : (1,7 ; -1,7) et (-1 ; 1)
forme active = bouton coche ; forme non lancable = icone a 0,4
barre masquee tant que GetNumShapeshiftForms() vaut 0
LE PIEGE : GetShapeshiftFormInfo ne rend pas la meme chose dans les deux
clients. Le moderne donne (texture, isActive, isCastable, spellID), 3.3.5
donne (texture, NOM, isActive, isCastable). Recopier la source au mot pres
prendrait le nom pour l'etat actif -- toutes les formes paraitraient
actives et aucune lancable. Le faux client suit la signature de 3.3.5 et le
harnais verifie l'un et l'autre, pour que l'inversion ne revienne pas.
Les boutons sont securises : rhabilles, jamais recrees, et rien n'est
redimensionne ni deplace en combat. La position s'enregistre dans
ForeverUI.Layout sous "postures", alignee par defaut sur le bord gauche de
la barre d'action, au-dessus de l'experience et de la reputation.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>