Créer un système de langage

Une compilation d'astuces relatives au développement d'addons sur Garry's Mod avec Lua

Niveau Intermédiaire
5 minutes de lecture
Astuces création d'addons en Lua

Aujourd'hui nous allons apprendre à créer un système de langages en Lua. Il existe différentes méthodes, mais nous allons nous focaliser sur 2 d'entre elles. Ouvres grand tes yeux, prend un papier un stylo et c'est parti ! 😎

Faire appel à une table

C'est sans doute la méthode la plus utilisée aujourd'hui. Moins "compacte" que la deuxième, elle fonctionne tout de même parfaitement bien !

Configuration

Pour commencer vous allez devoir créer une configuration type, ressemblante à celle-ci :

Désormais pour pouvoir renseigner vos différentes tables de langues, il vous faudra donc suivre ce modèle :

Résumé

Ok, je vais vous résumé rapidement ce qui vient de ce passer, ne vous inquiétez pas 👍 "TALANGUE" est votre « identifiant » qui vous permettra d'accéder aux informations de cette table.

L'identifiant ou clé vous permettra d'accéder à toutes les valeurs associées à celle-ci. Pour faire court si vous faites une traduction anglaise vous allez déclarer "en", vous allez donc utiliser TonAddon.en pour accéder ensuite aux différentes traductions renseignées "mot-clé" quant à lui est aussi un identifiant ou clé, qui cette fois-ci vous permettra d'accéder à la valeur directement que vous lui avez assigné au préalable. Pour vous aider à comprendre voilà un exemple :

Comme vous pouvez le voir nous avons donc créé 2 tables avec des identifiants différents, mais contenant tout les 2 un même identifiant. Pour afficher donc votre texte et obtenir cette traduction automatiquement, vous allez donc devoir écrire :

En partant du principe que la variable "Lang" contient "fr", le print vous retournera la valeur de welcome_message, soit : "Bonjour tout le monde !"

Rejoindre la communauté de développeurs

Rejoins notre communauté de développeurs pour progresser et t'améliorer

Faire appel à une fonction

Passons à la seconde méthode moins utilisé mais plus utile : l'appel à une fonction. Pour commencer, vous allez pouvoir réutiliser ce qu'on a créé dans le chapitre 1.

Maintenant, nous allons créer une fonction qui va nous permettre de récupérer la valeur traduite. (Suite au langage passé en "clé", ex : "fr") Exemple :

Suite à ça, pour accéder rapidement à la traduction vous devrez donc utiliser :

Les différents retours

- nil si l'identifiant recherché n'existe pas dans la table de languages. - "Language blabla does not exists" si TonAddon.Lang est défini à "blabla". - "Bonjour tout le monde !" si TonAddon.Lang est défini à "fr". - "Hello world !" si TonAddon.Lang est défini à "en". Et voilà, c'est terminé pour un système de langages en lua. Vous pouvez passer à la suite des tutoriels ou nous rejoindre sur Discord !

Rejoindre la communauté de développeurs

Rejoins notre communauté de développeurs pour progresser et t'améliorer

Passer au chapitre suivant :