Dev, mandat.

  • Initiateur de la discussion anthonin lahterman
  • Date de début
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
Salut, je suis entrain de réaliser un add-on de mandat de pêrquisition mais, des problèmes percistent, je donne le code, et explique apres:

client:
Code:
local DComboBox1 = vgui.Create( "DComboBox", invisiblebackground3 ) DComboBox1:SetValue( "Choisir un joueur" ) DComboBox1:SetPos( 120, 190 ) DComboBox1:SetZPos(14) DComboBox1:SetSize( 300, 50 ) for k, v in pairs(player.GetAll()) do DComboBox1:AddChoice(v:Nick()) end local makemandat = vgui.Create("DButton", invisiblebackground3) makemandat:SetZPos(20) makemandat:SetFont("Connect") makemandat:SetText("émettre") makemandat:SetPos(800,150) makemandat:SetSize(100,100) makemandat.Paint = function(s , w , h) draw.RoundedBox(0,0,0,w,h,Color(240, 0, 0,70)) end makemandat.DoClick = function() net.Start('mandatbutton') net.WriteString(raisonentry:GetValue()) net.WriteString(DComboBox1:GetValue()) net.SendToServer() end
server:
Code:
net.Receive('mandatbutton',function(lenght, ply) local reason = net.ReadString() local dconboboxchoice = net.ReadString() ply:warrant( conboboxchoice , reason ) ply:ChatPrint('mandat effectuer!')
end)
lorsque je met un bot, que je le choisi dans le dcombobox, que je met la raison, Sa me met

Disconnected player ordered a search warrant for John wane. Reason: la raison

le probleme est que dans la dcombobox, j'avais choisi le bot (son nom est: jim B)

merci de m'aider!
 
Dernière édition:
Kitsu

Kitsu

Chuck Norris
Messages
6 076
Score réaction
2 505
Points
740
?? Pourquoi j'ai été mentionné dans ce post alors qu'il est a supprimé ? x)
 
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
J'ai trouver mon erreur seul comme un grand BORT mais j'en ai trouver une autre BibleThump!
Kitsu à dit:
?? Pourquoi j'ai été mentionné dans ce post alors qu'il est a supprimé ? x)
 
Kitsu

Kitsu

Chuck Norris
Messages
6 076
Score réaction
2 505
Points
740
xD ok ok
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Donc cela ne trouve pas le bon joueur c'est bien cela ?

Dans ton DoClick met un print avec le "DComboBox1:GetValue()"

puis dans le net.Receive aussi. Et on voit quelles valeurs ils donnent.
 
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
Feytone à dit:
Donc cela ne trouve pas le bon joueur c'est bien cela ?

Dans ton DoClick met un print avec le "DComboBox1:GetValue()"

puis dans le net.Receive aussi. Et on voit quelles valeurs ils donnent.

[ERROR] addons/rnlife_computer/lua/entities/computer/init.lua:35: attempt to index global 'DComboBox1' (a nil value)

coté client, j'ai rajouter sa: chat.AddText( DComboBox1:GetValue() )
coté serv, j'ai rajouter sa: ply:ChatPrint(DComboBox1:GetValue())
 
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
J'ai bien le chat.AddText suivi du joueur que j'ai choisi, (celui du coté client) mais celui du coté serveur n'apparait pas, pour diferencier les deux, j'ai mis chat.AddText( Color(255,0,0)DComboBox1:GetValue() )
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Je t'ai dis un print déjà.... juste print()...

Et côté server c'est normal, il faut Read ton string dans le print et non pas la valeur
 
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
Feytone à dit:
Je t'ai dis un print déjà.... juste print()...
autant pour moi, j'ai mal lu!
 
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
Rectification:
pour les lignes de codes ajoutées coté serveur: print('serveur: '.. net.ReadString())
coté client: print('client: '.. DComboBox1:GetValue())
j'obtient dans la console:

Code:
client: Jim B
You are now able to search his house.
serveur:
le choix de la dcomboboix était bien Jim B
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Hmm alors juste pour vérifier (je suis pas sûr de ce que tu as marqué), remplace ton net.Receive par ça :

Code:
net.Receive('mandatbutton',function(lenght, ply)
local reason = net.ReadString()
local dconboboxchoice = net.ReadString()
ply:warrant( conboboxchoice , reason )
print(dconboboxchoice)
ply:ChatPrint('mandat effectuer!')
end)
 
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
Sa print sa:
Code:
client: Jim B
You are now able to search his house.
Jim B
Disconnected player ordered a search warrant for John wane. Reason: Entrez une raison...
mandat effectuer!
Mais quad je choisi le joueur Jim B sa met le mandat sur moi!
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Visiblement ça marche.
Wait : y'a une erreur de relecture... dans ton net.Receive au niveau du warrant, il manque le d à ton dconboboxchoice.
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Relisez les enfants ! Des fois on y passe une heure alors qu'il faut juste tout relire voire recopier à la main pour voir l'erreur.
 
  • J'aime
Réactions: anthonin lahterman
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
Je l'avais vu, mais quand je met le d, une erreur survient:

Code:
[DarkRP] lua/includes/util.lua:201: attempt to index a string value with bad key ('IsValid' is not part of the string library) 1. error - [C]:-1 2. __index - lua/includes/extensions/string.lua:297 3. IsValid - lua/includes/util.lua:201 4. notify - gamemodes/darkrp/gamemode/modules/base/sv_util.lua:3 5. unWarrant - gamemodes/darkrp/gamemode/modules/police/sv_init.lua:41 6. unknown - gamemodes/darkrp/gamemode/modules/police/sv_init.lua:15
et lorsque je l'enleve, plus d'erreur!
 
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
J'ai essayer en changant le nom de la variable, mais la meme erreur, lorsque je clic sur le button, l'erreur, c'est donc pour cela que ca ne choisi pas le joueur choisi dans la combobox, o_O.
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Car quand tu l'enlèves, il warrant personne.

Bon déjà je viens de vérifier tu as fait de grosses erreurs...
Déjà le player que tu veux warrant doit être juste avant les deux points : JOUEURàWARRANT:warrant( x , x)
Et ensuite à l'intérieur, il doit apparaître celui qui a lancé le warrant.
 
  • J'aime
Réactions: anthonin lahterman
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
Feytone à dit:
Car quand tu l'enlèves, il warrant personne.

Bon déjà je viens de vérifier tu as fait de grosses erreurs...
Déjà le player que tu veux warrant doit être juste avant les deux points : JOUEURàWARRANT:warrant( x , x)
Et ensuite à l'intérieur, il doit apparaître celui qui a lancé le warrant.
 
  • Initiateur de la discussion
anthonin lahterman

anthonin lahterman

Geek suprême
Messages
589
Score réaction
124
Points
150
Mais ducoup^, comment faire @Feytone ?
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Beh refais toute la partie pour le warrant côté serveur.
 
Discord d'entraide
Rejoignz-nous sur Discord