Besoin de votre aide pour créer un fichier de config et de language

  • Initiateur de la discussion Deadman69330
  • Date de début
  • Initiateur de la discussion
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
Bonjour,

J'ai besoin de votre aide pour créer un fichier de config pour l'addon de scierie, j'en ai jamais fait, le seul "fichier" de config que j'avais fait c'est dans mon hud mais je ne sait pas comment faire pour que le fichier se répande dans tout les fichiers (entities dans mon cas) je pensais le mettre dans
addons/mon_addon/lua/entities/ Le mettre là /deadman_lumber.....
/deadman_lumber.....
/deadman_lumber.....
Et je pensait mettre les variables en globales genre
Code:
Deadman_Lumber_Config_MaxWood_Sawmill = 1
Deadman_Lumber_Config_MaxWood_Cart = 10
Deadman_Lumber_Config_MaxPlanks_Cart = 10
et de faire un
Code:
include("config.lua")
dans chaque entitée

Et je pense qu'il faut faire la même chose pour les language.



Merci
 
  • Initiateur de la discussion
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
Upppppp
 
thepsyca

thepsyca

Psychopathe
Messages
2 164
Score réaction
648
Points
365
Deadman69330 à dit:
Bonjour,

J'ai besoin de votre aide pour créer un fichier de config pour l'addon de scierie, j'en ai jamais fait, le seul "fichier" de config que j'avais fait c'est dans mon hud mais je ne sait pas comment faire pour que le fichier se répande dans tout les fichiers (entities dans mon cas) je pensais le mettre dans
addons/mon_addon/lua/entities/ Le mettre là /deadman_lumber.....
/deadman_lumber.....
/deadman_lumber.....
Et je pensait mettre les variables en globales genre
Code:
Deadman_Lumber_Config_MaxWood_Sawmill = 1
Deadman_Lumber_Config_MaxWood_Cart = 10
Deadman_Lumber_Config_MaxPlanks_Cart = 10
et de faire un
Code:
include("config.lua")
dans chaque entitée

Et je pense qu'il faut faire la même chose pour les language.



Merci
je sais pas si tu peux le mettre la où tu le souhaite mais pour ton dossier config tu peux faire ceci :

Code:
deadmanlumber = deadmanlumber or {} -- on remet deadmanlumber au cas où elle existe déjà dans un autre addon pour pas de conflits
deadmanlumber.config = {}
deadmanlumber.config.lang = {}
deadmanlumber.config.maxwoodsawmill = 1
ect
pour la langue tu peux faire ceci :

Code:
deadmanlumber.config.choicelang = "FR"
deadmanlumber.config.lang["FR"] = { mdr = "mon texte",
}
et l'utiliser comme ceci dans ton fichier

Code:
local pdr = deadmanlumber.config.choicelang
draw.Simpletext(deadmanlumber.config.lang[pdr].mdr, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)
 
  • J'aime
Réactions: Deadman69330
  • Initiateur de la discussion
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
thepsyca à dit:
je sais pas si tu peux le mettre la où tu le souhaite mais pour ton dossier config tu peux faire ceci :

Code:
deadmanlumber = deadmanlumber or {} -- on remet deadmanlumber au cas où elle existe déjà dans un autre addon pour pas de conflits
deadmanlumber.config = {}
deadmanlumber.config.lang = {}
deadmanlumber.config.maxwoodsawmill = 1
ect
pour la langue tu peux faire ceci :

Code:
deadmanlumber.config.choicelang = "FR"
deadmanlumber.config.lang["FR"] = { mdr = "mon texte",
}
et l'utiliser comme ceci dans ton fichier

Code:
local pdr = deadmanlumber.config.choicelang
draw.Simpletext(deadmanlumber.config.lang[pdr].mdr, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)
Juste une petite question,
dans le fichier config qui se trouve dans mon dossier Entities j'ai mis ça
Code:
deadmanlumber = deadmanlumber or {} -- on remet deadmanlumber au cas où elle existe déjà dans un autre addon pour pas de conflits
deadmanlumber.config = {}
deadmanlumber.config.lang = {}
deadmanlumber_config_maxwoodwagon = 2 -- Le maximum de bois qu'il peut y avoir dans le wagon
Et dans l'Init.lua de mon entities:
Code:
local var1 = deadmanlumber_config_maxwoodwagon
function ENT:Initialize() self.wood_count = 0
end
function ENT:StartTouch(ent) if ent:GetClass() == "deadman_lumber_wood" and self.wood_count <= var1 then ent:Remove() self.wood_count = self.wood_count + 1 net.Start("wood_number") net.WriteInt( self.wood_count, 8 ) net.Send(player.GetAll()) end
end
Mais mon If ne fonctionne pas, il me met l'erreur suivante:
[ERROR] addons/deadman_lumberjack/lua/entities/deadman_lumber_wagon/init.lua:26: attempt to compare number with nil
1. unknown - addons/deadman_lumberjack/lua/entities/deadman_lumber_wagon/init.lua:26
Merci de ton aide :)



EDIT: En fait c'est bon, il suffit de mettre les fichiers config et lang dans Autorun :)
 
thepsyca

thepsyca

Psychopathe
Messages
2 164
Score réaction
648
Points
365
Deadman69330 à dit:
Juste une petite question,
dans le fichier config qui se trouve dans mon dossier Entities j'ai mis ça
Code:
deadmanlumber = deadmanlumber or {} -- on remet deadmanlumber au cas où elle existe déjà dans un autre addon pour pas de conflits
deadmanlumber.config = {}
deadmanlumber.config.lang = {}
deadmanlumber_config_maxwoodwagon = 2 -- Le maximum de bois qu'il peut y avoir dans le wagon
Et dans l'Init.lua de mon entities:
Code:
local var1 = deadmanlumber_config_maxwoodwagon
function ENT:Initialize() self.wood_count = 0
end
function ENT:StartTouch(ent) if ent:GetClass() == "deadman_lumber_wood" and self.wood_count <= var1 then ent:Remove() self.wood_count = self.wood_count + 1 net.Start("wood_number") net.WriteInt( self.wood_count, 8 ) net.Send(player.GetAll()) end
end
Mais mon If ne fonctionne pas, il me met l'erreur suivante:

Merci de ton aide :)
go mettre ton fichier config dans lua/autorun au pire
et pas besoin de repasser par une variable dans ton fichier init
 
  • J'aime
Réactions: Deadman69330
  • Initiateur de la discussion
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
thepsyca à dit:
go mettre ton fichier config dans lua/autorun au pire
et pas besoin de repasser par une variable dans ton fichier init
J'ai juste une dernière question (oui je sait je suis chiant x) )
Tu m'a dit d'utiliser ça:
Code:
draw.Simpletext(deadmanlumber.config.lang[pdr].mdr, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)
J'ai bien compris le ".mdr" mais j'ai pas compris d'où vient le [pdr] parce ce que du coup ça ne marche pas :/
 
thepsyca

thepsyca

Psychopathe
Messages
2 164
Score réaction
648
Points
365
Deadman69330 à dit:
J'ai juste une dernière question (oui je sait je suis chiant x) )
Tu m'a dit d'utiliser ça:
Code:
draw.Simpletext(deadmanlumber.config.lang[pdr].mdr, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)
J'ai bien compris le ".mdr" mais j'ai pas compris d'où vient le [pdr] parce ce que du coup ça ne marche pas :/
il te sert de raccourcie dans le fichier au lieu de mettre
Code:
deadmanlumber.config.lang[deadmanlumber.config.choicelang].mdr
tu fais une variable local dans ton fichier du style
Code:
local pdr = deadmanlumber.config.choicelang
comme ça tu peux faire dans ton fichier
Code:
(deadmanlumber.config.lang[pdr].mdr
 
  • Initiateur de la discussion
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
thepsyca à dit:
il te sert de raccourcie dans le fichier au lieu de mettre
Code:
deadmanlumber.config.lang[deadmanlumber.config.choicelang].mdr
tu fais une variable local dans ton fichier du style
Code:
local pdr = deadmanlumber.config.choicelang
comme ça tu peux faire dans ton fichier
Code:
(deadmanlumber.config.lang[pdr].mdr
Ah d'accord c'est donc pour ça que ca ne fonctionnait pas x)
 
Discord d'entraide
Rejoignz-nous sur Discord