<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[LUA]]></title><description><![CDATA[LUA]]></description><link>https://melinyel.net/category/95</link><generator>RSS for Node</generator><lastBuildDate>Wed, 02 Sep 2026 03:51:26 GMT</lastBuildDate><atom:link href="https://melinyel.net/category/95.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 16 Mar 2014 15:31:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[#2 Généralités]]></title><description><![CDATA[&lt;p&gt;
&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Salut les Melinyens,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;
Dans ce tutoriel, nous étudierons les généralités du langage Lua à savoir les variables, les fonctions, les commentaires, la syntaxe etc&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;span style="font-size:14px;"&gt;&lt;strong&gt;Les commentaires&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;
Comme dans tout langage qui se respecte, les commentaires sont indispensables. Il y a deux types de commentaires. Ceux à une ligne, et ceux qui sont multi-lignes :&lt;/p&gt;
&lt;pre class="ipsCode prettyprint"&gt;
-- Ceci est un commentaire sur une ligne
Vos instructions ....
....
....
--[[ Ceci est un commentaire
sur plusieurs
lignes ]]--&lt;/pre&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;span style="font-size:14px;"&gt;&lt;strong&gt;Les variables&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;
En Lua, la déclaration de variables  est on ne peut plus simple. Elle se fait de cette façon&lt;/p&gt;
&lt;pre class="ipsCode prettyprint"&gt;
variable = valeur&lt;/pre&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Sachez que Lua différencie les portées de variables. Généralement on utilisera une variable "locale" si elle est propre uniquement à la fonction dans laquelle elle est utilisée afin d'éviter une surcharge inutile. De base, chaque variable est considérée comme "globale" ; pour l'initier en local, voici comme faire :&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class="ipsCode prettyprint"&gt;
local variable = valeur&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;A noté que les variables sont sensibles à la casse. De ce fait : variable et vaRiable seront deux variables bien distinctes.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Les nombres : Pour déclarer une variable de type nombres, faites comme suit : &lt;span style="font-family:'courier new', courier, monospace;"&gt;monAge = 16&lt;/span&gt; (Ainsi, la variable nommée monAge aura pour valeur 16). A partir de là, vous pourrez effectuer les opérations de bases. Les variables de type "number" regroupent tout l’arithmétique : double, integer etc.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Les chaines de caractères : Rien de plus simple : &lt;span style="font-family:'courier new', courier, monospace;"&gt;pseudo = "Abraham"&lt;/span&gt;. N'oubliez pas les double guillemets (vous pouvez en mettre aussi des simples)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Booléens : Ce type de variable bien connu ce déclare de la façon suivante : &lt;span style="font-family:'courier new', courier, monospace;"&gt;isLogged = true&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Le cas du "nil" : Le "nil" permet en fait d'annuler une variable, et donc de rendre "nul" son contenu. C'est un peu l'équivalent du NULL en C, ou bien du unset en php. Par exemple, si vous annuler la variable monAge, vous faites : &lt;span style="font-family:'courier new', courier, monospace;"&gt;monAge = nil&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;span style="font-size:14px;"&gt;&lt;strong&gt;Les tableaux&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;
Les tableaux sont certainement les éléments les plus puissant de Lua, car ils peuvent être utiliser dans n'importe quelle situation.&lt;/p&gt;&lt;p&gt;
Pour déclarer un tableau, il faut le faire de cette façon :&lt;/p&gt;
&lt;pre class="ipsCode prettyprint"&gt;
membres = { }
-- Un tableau se divise en deux parties : l'index, et la valeur.
--[[ membres[index] = "valeur" (ou valeur sans guillemets si c'est un nombre)
Exemple : ]]--
membres[1] = "Abraham"
-- Et pour accéder à cette dite valeur, il faut simplement renseigner l'index :
print(membres[1])
-- ... va renvoyer : Abraham
&lt;/pre&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;span style="font-size:14px;"&gt;&lt;strong&gt;La syntaxe &lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Comme vous l'avez surement remarqué, la syntaxe est très simple en Lua. Une ligne = une instruction. De ce fait, pas besoin d'avoir des ";" à la fin de vos instructions. Comme je l'ai dit, il n'y a pas de type de variables&lt;/span&gt;&lt;/span&gt; donc la déclaration en est simplifiée.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Les fonctions&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Je vais vous présenter très brièvement les fonctions puisqu'elles feront l'objet d'un chapitre particulier, dans lequel nous aborderons les fonctions les plus connues. Je vais simplement vous donner la structure générale d'une fonction&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class="ipsCode prettyprint"&gt;
function nomDeLaFonction(argument1, argument2)
   --[[ Enchainement
        d'instructions de votre fonction
         ]]--
end
&lt;/pre&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;N'oubliez surtout pas le END à la fin de votre fonction. Il est capital si vous ne voulez pas rencontrer une quelconque erreur. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Chapitre un peu cours, certes, mais qui permet de vous mettre en situation. Dans un prochain chapitre, nous allons rentrer un peu plus dans le vif du sujet. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
]]></description><link>https://melinyel.net/topic/178/2-généralités</link><guid isPermaLink="true">https://melinyel.net/topic/178/2-généralités</guid><dc:creator><![CDATA[Abraham]]></dc:creator><pubDate>Sun, 16 Mar 2014 15:31:00 GMT</pubDate></item><item><title><![CDATA[#1 Présentation]]></title><description><![CDATA[&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Bonjour à tous, &lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
 &lt;br/&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Aujourd'hui, je vais vous présenter rapidement le langage LUA (Lune en portugais). Dans cette partie, nous verrons juste les considérations d'ordre général, puis dans les prochains tutoriels, je vous expliquerai le fonctionnement de ce langage. &lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
 &lt;br/&gt;&lt;span style="color:#555555;"&gt;&lt;strong&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;span style="font-size:14px;"&gt;I - L'histoire du Lua&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br/&gt;
 &lt;br/&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Lua été créé en 1993. C'est un langage conçu pour pouvoir être embarqué au sein d'applications afin de de pouvoir optimiser celles-ci. Lua (qui signifie Lune en portugais) a été créé par Luis Henrique de Figueiredo, Roberto Ierusalimschy et Waldemar Celes (appartenant au groupe de recherche TeCGraf).&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;span style="font-size:12px;"&gt;Lua a été écrit en langage C ANSI strict, c'est pourquoi il est compatible avec une très grande variété de systèmes. Il s'intègre parfaitement dans la plus part des projets écrits en C. C'est un langage notamment très apprécié pour les interfaces de jeu (le plus connu étant World of Warcraft) mais aussi pour Garry's Mod ou Far Cry. Il est aussi utilisé pour réaliser la plus part des jeux sur DS (avec le microLua).&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
 &lt;/p&gt;
&lt;p style="text-align:right;"&gt;&lt;span style="font-size:10px;"&gt;(Source : &lt;a href="http://wikipedia.lua/wiki/Lua)" rel="external nofollow"&gt;http://wikipedia.lua/wiki/Lua)&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#555555;"&gt;&lt;strong&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;span style="font-size:14px;"&gt;II - Les moteurs Lua &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br/&gt;
 &lt;br/&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Ce qu'il faut savoir, c'est que vous ne pourrez développer que très rarement des programmes en LUA seulement, puisque ce n'est pas un langage assez puissant pour qu'il puisse se suffire à lui même. De ce fait, il vous faudra l'intégrer dans un projet, et je vais vous en présenter rapidement deux (les seuls que je connaisse), à ce jour.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Eluna Engine (sur World of Warcraft) : C'est par celui-là que j'ai commencé. C'est en fait un moteur que vous pouvez installer facilement sur Trinity Core (j'essaierai de vous passer quelques tutoriels vidéos très bien foutus). Il vous permet, grâce à sa simplicité, de changer presque toute l'interface du jeu (à savoir les cosmétiques, le comportement des PNJ's, les boites d'affichage etc ...) sans pour autant toucher au core du serveur (qui est plus compliqué à gérer puisque écrit en C++). Cependant, attendez vous à avoir moins de possibilité qu'en modifiant le core. Mais ne vous trompez pas, j'ai réussi à faire des choses sympa avec Eluna tel un système de levier qui ouvre une grille lorsqu'il est activé, un système de connexion élaboré (et oui, Eluna gère les bases de données ! ) Bref, Eluna propose pas mal de possibilités, mais avec une documentation qui laisse à désirer puisque incomplète sur certains points. &lt;/span&gt;&lt;/span&gt;
&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Multi Theft Auto (que j'utilise en ce moment) est en réalité un mod qui permet de jouer en ligne avec d'autres joueurs (impossible de base sur GTA SAN ANDREAS) tout en offrant la possibilité au développeur de créer son serveur de A à Z sans aucun script prédéfini. Et devinez quoi ? Le moteur est en Lua. Pour le coup, la documentation est géniale, la communauté assez altruiste ce qui vous permet d'obtenir rapidement une réponse. MTA gère aussi bien les interfaces GUI que la connexion à la base de données et est d'autant plus puissant qu'il gère aussi bien le côté client (client-side) que le côté serveur (server-side) ce qui vous permet d'économiser des performances de votre serveur dédié. &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;En bref, Lua est un langage très sympa qui s'intègre parfaitement à certains projets en proposant une alternative aux langages plus compliqué. Je n'ai pas stipulé le fait que vous pouvez tester vos petits scripts sur le site officiel de Lua (cf. annexes)&lt;br/&gt;&lt;br/&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="color:rgb(85,85,85);"&gt;&lt;strong&gt;III - Annexes &lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;em&gt;Lua &lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt; * Site officiel de Lua : &lt;a href="http://lua.org" rel="external nofollow"&gt;http://lua.org&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt; * Testez vos scripts : &lt;a href="http://lua.org/demo.html" rel="external nofollow"&gt;http://lua.org/demo.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;em&gt;Eluna Engine&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt; * Installer Eluna Engine : &lt;a href="http://www.youtube.com/watch?v=8wGHf7FbhSw" rel="external nofollow"&gt;http://www.youtube.com/watch?v=8wGHf7FbhSw&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt; * Documentation : &lt;a href="http://wiki.emudevs.com/doku.php?id=eluna" rel="external nofollow"&gt;http://wiki.emudevs.com/doku.php?id=eluna&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt; * Github du projet : &lt;a href="https://github.com/ElunaLuaEngine/Eluna/wiki/Installation-&amp;amp;-Updating" rel="external nofollow"&gt;https://github.com/ElunaLuaEngine/Eluna/wiki/Installation-&amp;amp;-Updating&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;&lt;em&gt;Multi Theft Auto&lt;/em&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt; * Site officiel : &lt;a href="http://mtasa.com/" rel="external nofollow"&gt;http://mtasa.com/&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt; * Documentation : &lt;a href="http://wiki.mtasa.com" rel="external nofollow"&gt;http://wiki.mtasa.com&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;Voilà, d'autres tutoriels arriveront pour vous présenter plus en profondeur ce langage. &lt;/span&gt;&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;
 &lt;/p&gt;
]]></description><link>https://melinyel.net/topic/151/1-présentation</link><guid isPermaLink="true">https://melinyel.net/topic/151/1-présentation</guid><dc:creator><![CDATA[Abraham]]></dc:creator><pubDate>Sat, 15 Mar 2014 11:20:31 GMT</pubDate></item></channel></rss>