Tuto Comprendre le GLua #1

  • Initiateur de la discussion
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
Mise à jour : 21/12/16 : 16:59
Tout d'abord, sachez que ce tutoriel sera souvent éditer et qu'il n'en ai que à son début :p

Avant de vouloir écrire, il faut comprendre le code, et je vais vous y aider un peu :)
I ) Les variables
Dans tous les langages de programmations vous avez forcément une variable, sinon c'est comme si vous aviez du pain mais sans mie (on va pas se mentir, c'est ce qu'on aime dedans). Mais une variable qu'es que sait ?
Une variable est un mot qui généralement, doit être déclarer avant son utilisation (sinon, vous aurez un problème qui en fonction du langage vous diras que la variable n'est pas déclarer, que la valeur est nul/null/nil/non déclaré, etc..)

Que permettent-elles ?
Les variables permettent de stockée une valeur temporairement, illustrons ça


⚠ Attention, les variables de peuvent prendre qu'une seule valeur, à l'instant ou une nouvelle valeur lui est définie, l'ancienne disparaît (c'est triste :(), enfin, il existe une exception qu'on verra plus tard :)

Elles ont plusieurs types :
Bool = False / True ( Pour vérifier une condition )
String = "Test" ( Utilisé quand on veut écrire un texte )
Int = 32 (Utilisé quand on veut écrire un nombre entier (pas de virgule))
Float = 42,0154 (Utilisé pour les nombres à virgules)
Etc..

Une variable ne peut prendre qu'un seul type :
int variable = 3 (Possible)
string variable = "Test" (Possible)
int variable = "Test" (Impossible)
string variable = "3" (Possible parce que ça reste un texte, tant qu'il y a les guillemets :D)

Parlons du Glua, vous voyez ce que je viens de vous dire sur le fait qu'une variable ne peut prendre qu'un seul type ? Et bah en Glua, c'est pas du tout le cas (Eh merde, déjà que j'ai pris 20 ans à enregistrer ça, maintenant il me dit que c'est faux :mad:). Attention, c'est un cas exceptionnel, essayer pas en C# de faire :
string var = "Test"
var = 3
C'est pas possible :cool:

Autre chose, en Glua pas besoin de définir le type d'une variable ou encore de la déclarer en avance, il suffit juste de lui attribuer une valeur au bout d'un moment :D

Les variables & fonctions éphémères (#PortéePower)
Dans le lua comme dans d'autres langages, il est possible de définir une variable sur une seule partie du code, pour ceci il suffit juste de rajouter un "local" au début de la variables

Exemple : On crée un fichier cl_test.lua, on y place ce code

local function MyFunction()
local name = ply:Name()
print(name) => Capitaine Z3k4 (le "=>" représente ce que affichera la console)

end
print(name) => nil

La fonction "MyFunction" sera utilisable dans tous le fichier, cependant, la variable "name" ne sera utilisable que dans la fonction, car le local indique à la variable qu'elle ne doit pas être utiliser ailleurs que dans la fonction. Si nous voulons pouvoir l'utiliser dans tous le fichier, il suffit de la déclarer à l'extérieur de la fonction comme ceci :

local name = ply:Name()
local function MyFunction()
print(name) => Capitaine Z3k4
end
print(name) => Capitaine Z3k4

Nous pouvons donc utiliser le local pour utiliser une variable qui n'est pas utile au reste du code :)




(Attendez un peu pour la suite, et n'hésitez pas à me dire si j'ai dis une bêtise)​
 
Dernière édition:
  • J'aime
Réactions: Apotex
Joe Leroi

Joe Leroi

Chuck Norris
Messages
4 368
Score réaction
933
Points
605
First merci à toi
 
  • Initiateur de la discussion
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
Je sais pas encore si je créer plusieurs tutoriel, ou si je regroupe tous ce que je vais dire ici :)
 
Joe Leroi

Joe Leroi

Chuck Norris
Messages
4 368
Score réaction
933
Points
605
Z3k4 à dit:
Je sais pas encore si je créer plusieurs tutoriel, ou si je regroupe tous ce que je vais dire ici :)
Tout ici tu édite + met un grand trait pour dire TUTO 2
 
Insomniaque97

Insomniaque97

Geek suprême
Messages
481
Score réaction
142
Points
150
Intéressant ! A l'avenir, si tu veux je peux t'aider pour la mise en forme et aussi les fautes. :p
 
  • Initiateur de la discussion
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
Insomniaque97 à dit:
Intéressant ! A l'avenir, si tu veux je peux t'aider pour la mise en forme et aussi les fautes. :p
Je suis pas contre, faut relever le niveau :rolleyes:
 
  • J'aime
Réactions: Insomniaque97
Insomniaque97

Insomniaque97

Geek suprême
Messages
481
Score réaction
142
Points
150
Ah et aussi par mes connaissances dans la prog. :)
 
MattKiller68

MattKiller68

Psychopathe
Messages
1 156
Score réaction
309
Points
305
Oh, la vache, j'ai lus, j'ai toujours rien pigé!
BibleThump
 
  • Initiateur de la discussion
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
MattKiller68 à dit:
Oh, la vache, j'ai lus, j'ai toujours rien pigé!
BibleThump
Tu peux détailler ? J'éditerais en fonction de ce que tu dis ^^
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
MattKiller68 à dit:
Oh, la vache, j'ai lus, j'ai toujours rien pigé!
BibleThump
Tentez avec ceci : http://wiki.garrysmod.com/page/Beginner_Tutorial_Intro

( Il y a des exemples :) )
 
Joe Leroi

Joe Leroi

Chuck Norris
Messages
4 368
Score réaction
933
Points
605
La suite arrive ? Depuis le temps ?
 
  • Initiateur de la discussion
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
ça dépends, si des personnes trouvent ce sujet utile :)
 
Joe Leroi

Joe Leroi

Chuck Norris
Messages
4 368
Score réaction
933
Points
605
MattKiller68

MattKiller68

Psychopathe
Messages
1 156
Score réaction
309
Points
305
et moi
 
Airmaxmad

Airmaxmad

Geek
Messages
251
Score réaction
13
Points
85
Et moi
 
Kitsu

Kitsu

Chuck Norris
Messages
6 076
Score réaction
2 505
Points
740
Airmaxmad

Airmaxmad

Geek
Messages
251
Score réaction
13
Points
85
Et oui ^^
 
B

BySn0wHD

Geek
Messages
36
Score réaction
1
Points
60
oui ;)
 
  • Banni
B

Bilel Abdela

Geek
Messages
109
Score réaction
15
Points
60
merci pour ce tuto ! Jai rien compris mdr... Malgré que ce soit bien expliquer x)
 
S

Swarzox

Psychopathe
Messages
704
Score réaction
396
Points
325
Prochain tuto : les coroutines
 
Discord d'entraide
Rejoignz-nous sur Discord