Oyez, oyez !

Les résultats du vote sur les meilleurs RPG de tous les temps sont désormais dévoilés dans ce message !

Merci à toutes et à tous pour votre participation !

N'hésitez pas à aller commenter, ajouter des jeux auxquels vous n'auriez pas pensé...

Modifier un fichier .tra APRÈS sa conversion par ICONV

Regroupe tous les sujets sur les commandes, les fonctions, les routines, les modifications des fichiers systèmes (ids, 2da...)...
Répondre
Avatar du membre
deratiseur
Golem de fer
Messages : 3697
Enregistré le : mer. 05 déc. 2007, 18:35
Localisation : Gap, Hautes alpes
Statut : Hors ligne

Modifier un fichier .tra APRÈS sa conversion par ICONV

.

Message par deratiseur »

J'explique le problème :
Sous BG2, il est impossible de tenir en même temps un bâton/un arc et un bouclier. Donc pour un sort qui invoque un bâton dans les mains du magicien et un autre qui fait la même chose avec un arc, j'avais inclus dans la description du sort "ATTENTION : N'UTILISEZ PAS CE SORT SI VOUS TENEZ QUELQUE CHOSE EN MAIN SECONDAIRE". Car invoquer un bâton en tenant un bouclier faisait irrémédiablement crasher le jeu.

Mais : sous BG2EE 2.5, tenir un arc et un bouclier est tout à fait possible. Enfin, grâce à Beamdog, un archer peut passer à "arme+bouclier" quand il est attaqué au corp à corp. Du coup le morceau de texte que j'ai rajouté ne sert à rien sous BG2EE.

Je voudrais donc supprimer ce texte dans le cas d'une installation BG2EE. Sauf que ceci doit être fait avant ou après la routine ICONV, et avant le chargemant du fichier par la commande "Language".

j'ai donc tenté ceci :
ALWAYS
ACTION_IF GAME_IS ~BG2EE EET~ THEN BEGIN
COPY_EXISTING ~Derats_Magasin_2/Languages/French/Magasin2-sorts.tra~ ~Derats_Magasin_2/Languages/French/Magasin2-sorts.tra~ REPLACE_TEXTUALLY ~

ATTENTION : N'UTILISEZ PAS CE SORT SI VOUS TENEZ QUELQUE CHOSE EN MAIN SECONDAIRE.~ ~~
ACTION_DEFINE_ARRAY px_reload BEGIN
~Setup.tra~
~Magasin2-sorts.tra~
~Magasin2-objets.tra~
~Agenor.tra~
~Cromwell.tra~
END
ACTION_DEFINE_ARRAY px_noconvert BEGIN END
LAF HANDLE_CHARSETS
INT_VAR
infer_charset = 1
STR_VAR
tra_path = EVAL ~%MOD_FOLDER%/Languages~
noconvert_array = px_noconvert
reload_array = px_reload
END
END
INCLUDE ~Derats_Magasin_2/Scripts/Macros.cod~
INCLUDE ~Derats_Magasin_2/Scripts/GW_BGEE.tpa~
END
Ça ne marche pas.

Quelqu'un à une autre idée ? Qqchose qu'on pourrait lancer avant "languages" ?
Avatar du membre
Freddy_Gwendo
Adepte de Grondemarteau
Orbe ancien
Messages : 5877
Enregistré le : sam. 23 avr. 2011, 00:26
Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
Statut : Hors ligne
.

Message par Freddy_Gwendo »

Solution élégante, que j'ai testée avec le shurininja et mon mod : comme j'en avais marre de la limite du nombre de caractères imposée dans la description des kits par BG2, j'ai décidé de rétablir la description entière dans BG2EE. Malheureusement, elle suppose de définir deux descriptions dans le fichier tra. Cepedant, tu pourrais t'en inspirer pour ton cas :

Tu définis ta variables derat_warning dans le bloc always :

Code : Tout sélectionner

ACTION_IF (GAMES_IS liste EE) BEGIN OUTER_SPRINT derat_warning ~~ END ELSE BEGIN derat_warning ~ATTENTION : N'UTILISEZ PAS CE SORT SI VOUS TENEZ QUELQUE CHOSE EN MAIN SECONDAIRE.~ END
Puis, dans ta description du sort, tu ajoutes ceci à la fin du sort : %derat_warning%

Normalement, le texte devrait être ajouté par WeiDU.

Note : pour la traduction, tu peux remplacer le texte par une référence comme OUTER_SPRINT derat_warning @nnnn
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Avatar du membre
deratiseur
Golem de fer
Messages : 3697
Enregistré le : mer. 05 déc. 2007, 18:35
Localisation : Gap, Hautes alpes
Statut : Hors ligne
.

Message par deratiseur »

En fait, j'ai trouvé : 1, COPY à la place de COPY EXISTING, et 2, pas d'espace/retour à la ligne avant le texte à effacer. Et ça marche :)

Mais je vais tester ce que tu m'indiques, j'en apprendrais encore, comme ça. je n'en fini jamais d'apprendre. Merci :)
Répondre

Retourner vers « Programmation WeiDU »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 0 invité