Arma: Créer et afficher du texte enrichi

Voici un nouvel article sur des commandes importantes qui te permettront d’écrire du texte enrichi en utilisant des balises de type HTML..

composeText and formatText

Comme tu le sais sans doute déjà, il existe un type de variable STRING et un type de variable TEXT.

Le type TEXT concerne les textes structurés (des chaines de caractères contenant des balises HTML) qui permettent d’enrichir une simple chaine de caractères avec des options tel que changer la couleur du texte, définir la police, ajouter des images etc.

Le type STRING quant à lui est purement du texte brut sans aucun option de mise en page. Important à savoir, une variable de type STRING peut contenir des balises HTML mais elles ne seront tous simplement pas interprétées.

Dans cet article, je ne parlerais que du type TEXT 🙂

Pour convertir une chaine de type STRING en TEXT, tu dois utiliser la commande parseText.

Les variables de type TEXT ne peuvent pas être utilisées de la même façon que les types STRING. Il n’est pas possible par exemple de concaténer des variables TEXT en utilisant l’opérateur +

TEXT1 + TEXT2 + TEXT3 // ne fonctionne pas.

Pour concaténer les variables TEXT, tu peux utiliser 2 autres commandes, soit: composeText ou formatText.

composeText prend un tableau de TEXT ou STRING et les convertit et concatène en un seul TEXT.

hint composeText [
    "Top",
    lineBreak,
    parseText "Red Left",
    parseText "
",
    parseText "Green Right",
    lineBreak,
    "Bottom"
];

formatText qui s’utilise de la même façon que la commande format classique en permettant d’indiquer le positionnement des éléments dans la composition de la future variable TEXT.

hint formatText [
    "%7%6%5%4%3%2%1",
    "Bottom",
    lineBreak,
    parseText "Green Right",
    parseText "
",
    parseText "Red Left",
    lineBreak,
    "Top"
];

Comme tu le vois ci-dessus, la bonne nouvelle est que la commande hint permet d’afficher également des variables de type TEXT.

Afficher une image

Tu peux également afficher des images de type jpg, ou paa dans le texte enrichi en utilisant la balise img.

Sache néanmoins que celle-ci ne peut pas dépasser la largeur du contrôle hint. Si tu souhaites afficher ta propre image avec une taille plus grande, il faudra alors utiliser un autre contrôle.

Il faut également faire attention aux caractères pouvant être introduit par les joueurs qui pourrait modifier l’interprétation des balises (exemple des noms de joueurs avec des caractères spéciaux). Killzone Kid avait publié un code pour remplacer des caractères : «  »

private ["_array","_temp","_sanitised"];
_array = toArray "";
_temp = [];
{
    switch _x do {
        case 60 : {
            _temp = _temp + toArray "";
        };
        default {
            _temp = _temp + [_x];
        };
    };
} forEach _array;
_sanitised = toString _temp;
//_sanitised is now 

Je ne vais pas passer plus de temps sur le sujet des balises car ce blog justement ne permet pas d’ajouter facilement d’exemples, mais tu pourras en trouver sur facilement sur le wiki de bis.

Cet article a été initialement rédigé par Killzone Kid, complété, corrigé par Code34

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l’aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s