-- snip --

  • Initiateur de la discussion
Fleodon

Fleodon

Geek suprême
Messages
819
Score réaction
193
Points
150
-- snip --
 
Dernière édition:
slownls

slownls

Helpeur Divin
Messages
1 853
Score réaction
1 079
Points
465
Essaye avec un net qui ouvre un menu :

Code:
if team.GetName ( ply:Team () ) == 'Pompier' then
net.Start ("tonnet")
net.Send ( ply )
end
 
slownls

slownls

Helpeur Divin
Messages
1 853
Score réaction
1 079
Points
465
Bah...
Code:
for k,v in pairs( player.GetAll() ) do if team.GetName( v:Team() ) == "Pompier" then net.Start("tonnet") net.Send(v) end
end
 
slownls

slownls

Helpeur Divin
Messages
1 853
Score réaction
1 079
Points
465
Fleodon à dit:
Salut à la fin de ce code donc je créée un "net receive" et dans ceci je fais ouvrir une frame ?
Je l'ai fais mais j'ai une error dans la console :

[ERROR] lua/entities/alarme incendie/cl_init.lua:178: 'end' expected (to close 'function' at line 149) near '<eof>'
1. unknown - lua/entities/alarme incendie/cl_init.lua:0


https://pastebin.com/bvKvk1wr
Ta oublié un "end"
 
UnCaribou

UnCaribou

Geek
Messages
82
Score réaction
35
Points
70
Rajoute sa au début du code :

util.AddNetworkString("sec")
 
ZarosOVH

ZarosOVH

Modérateur
Membre du Staff
Messages
6 527
Score réaction
5 488
Points
1 295
Fleodon à dit:
(EDIT) Description de mon soucis :
J'ai crée donc une entité, une fois spawn si "e" appuyé par joueur ceci ouvre une DFrame, avec 3Boutons :
- 1. Qui active une alarme.
- 2. Qui désactive l'alarme.
- 3. Qui envoie les secours.

C'est bien le 3 qui pose soucis :
Si 3appuyé > Ouvrir une Frame à un métier précis.
Sauf que cela ne marche pas, j'ai éssayé le code de @slownls mais une erreur s'affiche :

"[ERROR] lua/entities/alarme incendie/cl_init.lua:103: attempt to call field 'Send' (a nil value)
1. DoClick - lua/entities/alarme incendie/cl_init.lua:103
2. unknown - lua/vgui/dlabel.lua:232"

Pour l'instant je me retrouve bloqué.
Si je me trompe pas.... quand tu envoies un net depuis le cl_init tu ne peut pas utiliser net.Send() tu dois utiliser net.SendToServer()

Donc tu pourrais par exemple faire un net dans ton 3ème bouton que tu envoie côté serveur puis dans le init tu récupères le net qui envoie un net avec le code de slown. Ce net sera récupérer côté client et il contiendra ta frame envoyer au joueur dans le bon job.


*Espere être claire et ne pas dire de bêtise*
 
ZarosOVH

ZarosOVH

Modérateur
Membre du Staff
Messages
6 527
Score réaction
5 488
Points
1 295
Fleodon à dit:
Voici : https://pastebin.com/yzBy7jkq
- Tu écris net.Send(v) mais v n'est pas défini.

Fleodon à dit:
Et voici pour la sortie : https://pastebin.com/QML0iKpu
- Pas besoin de mettre frame:Center() si tu utilises un SetPos() avant.
- Pas besoin d'écrire 2 fois frame:SetVisible(true) et d'ailleurs il me semble que de mémoire il est en true donc pas besoin de le mettre.
- Le code suivant je l'ai jamais utilisé donc je sais pas si c'est possible (dans le doute tu peux le supprimé et changer les couleurs via la fonction paint)
Code:
closeButton.Colors = Color(0,0,0)
- Essaye de respecter l'indentation lorsque tu fais un code.
- De plus je ne vois pas les 3 boutons dont tu parles. Tu as surement du retirer des lignes avant d'envoyer et cela complique la chose pour t'aider.
 
ZarosOVH

ZarosOVH

Modérateur
Membre du Staff
Messages
6 527
Score réaction
5 488
Points
1 295
A la ligne 12, utilise ceci pour vérifier le job du joueur:
slownls à dit:
if team.GetName ( ply:Team () ) == 'Pompier' then
 
  • Banni
SIGEMT

SIGEMT

Geek suprême
Messages
591
Score réaction
523
Points
180
slownls à dit:
Bah...
Code:
for k,v in pairs( player.GetAll() ) do if team.GetName( v:Team() ) == "Pompier" then net.Start("tonnet") net.Send(v) end
end

Autant comparer avec TEAM_POMPIER, comparer une int c'est mieux que une string
 
  • J'aime
Réactions: slownls
ZarosOVH

ZarosOVH

Modérateur
Membre du Staff
Messages
6 527
Score réaction
5 488
Points
1 295
SIGEMT à dit:
Autant comparer avec TEAM_POMPIER, comparer une int c'est mieux que une string
Donc if ply:Team() == TEAM_POMPIER then ?
 
  • Banni
SIGEMT

SIGEMT

Geek suprême
Messages
591
Score réaction
523
Points
180
Si c'est la variable, oui
 
  • J'aime
Réactions: ZarosOVH
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Fleodon à dit:
Suite à ta réponse trop compliquée j'ai voulu utiliser un "if" tout simple "if table.HasValue( IsThePlayerMayor, LocalPlayer():Team() ) then"
https://pastebin.com/kH19qZeT
Sauf que cela m'affiche ceci :

"[ERROR] lua/includes/extensions/table.lua:94: bad argument #1 to 'pairs' (table expected, got nil)
1. pairs - [C]:-1
2. HasValue - lua/includes/extensions/table.lua:94
3. DoClick - lua/entities/alarme incendie/cl_init.lua:99
4. unknown - lua/vgui/dlabel.lua:232"
Non. Déjà si c'est pour un addon perso, t'emmerdes pas avec un fichier config.
Bon ensuite, On a pas tout ton code, c'est compliqué de t'aider tu mets pas du tout les bonnes parties du code auxquelles on s'intéresse vraiment.

Là ton code comme je le vois n'a aucun sens.
 
  • Banni
SIGEMT

SIGEMT

Geek suprême
Messages
591
Score réaction
523
Points
180
  • J'aime
Réactions: slownls et UnCaribou
Discord d'entraide
Rejoignz-nous sur Discord