[GLua] NPC Car Dealer

  • Initiateur de la discussion
Wabel

Wabel

Je ne sais pas quoi mettre
Messages
2 262
Score réaction
707
Points
330
Salut!

Je suis en train de concocter un car dealer police sur GMOD et j'aimerais qu'il n'y ai que 5 véhicules qui puissent être spawn (en général, pas que par joueur) mais je ne sais comment faire.

Merci de votre aide.
 
Akulla

Akulla

Helpeur Divin
Messages
3 808
Score réaction
2 240
Points
550
Cette chose sbox_maxvehicles 5
 
slownls

slownls

Helpeur Divin
Messages
1 853
Score réaction
1 079
Points
465
Tu créer une variable qui se set à chaque spawn :)
 
brh450

brh450

Geek suprême
Messages
611
Score réaction
180
Points
120
Avec le code ci dessous ça devrait être bon :

Code:
if #ents.FindByClass("prop_vehicle_jeep") >= 5 then return end
 
slownls

slownls

Helpeur Divin
Messages
1 853
Score réaction
1 079
Points
465
brh450 à dit:
Avec le code ci dessous ça devrait être bon :

Code:
if #ents.FindByClass("prop_vehicle_jeep") >= 5 then return end
Tu parcoure la table des entités juste pour une vérification, c'est plus optimisé de faire avec une variable ;)
 
brh450

brh450

Geek suprême
Messages
611
Score réaction
180
Points
120
slownls à dit:
Tu parcoure la table des entités juste pour une vérification, c'est plus optimisé de faire avec une variable ;)
Je trouve ça mieux que ta méthode car une voiture peut être remove et ça ne vas pas forcement update la variable ... pour un petit script comme ça je doute que ça fasse lag le serv ;)
 
slownls

slownls

Helpeur Divin
Messages
1 853
Score réaction
1 079
Points
465
brh450 à dit:
Je trouve ça mieux que ta méthode car une voiture peut être remove et ça ne vas pas forcement update la variable ... pour un petit script comme ça je doute que ça fasse lag le serv ;)
C'est vrais, après si il veut pousser il peut le faire avec un hook ect... Mais bon comme tu la dis, pour un script comme sa c'est mieux ta méthode :)
 
  • J'aime
Réactions: brh450
  • Initiateur de la discussion
Wabel

Wabel

Je ne sais pas quoi mettre
Messages
2 262
Score réaction
707
Points
330
brh450 à dit:
Avec le code ci dessous ça devrait être bon :

Code:
if #ents.FindByClass("prop_vehicle_jeep") >= 5 then return end
ah j'y été presque alors x) , j'avais mis :
Code:
if "prop_vehicle_jeep" >=5 then return end
 
  • Initiateur de la discussion
Wabel

Wabel

Je ne sais pas quoi mettre
Messages
2 262
Score réaction
707
Points
330
brh450 à dit:
Avec le code ci dessous ça devrait être bon :

Code:
if #ents.FindByClass("prop_vehicle_jeep") >= 5 then return end
Mais la, sa va faire en sorte que ce soit TOUT les véhicules du serveur et pas que le véhicule spécifié, non?
 
M

Membre supprimé 85513

Anonyme
WabelGame à dit:
Mais la, sa va faire en sorte que ce soit TOUT les véhicules du serveur et pas que le véhicule spécifié, non?
Oui
 
slownls

slownls

Helpeur Divin
Messages
1 853
Score réaction
1 079
Points
465
WabelGame à dit:
Mais la, sa va faire en sorte que ce soit TOUT les véhicules du serveur et pas que le véhicule spécifié, non?
Effectivement, sinon tu peut set une valeur à l'entité et le trié par la suite :

Code:
local VehTotal = 0
for k,v in pairs( ents.FindByClass("prop_vehicle_jeep") ) do if v.IsCPCarDealer then VehTotal = VehTotal + 1 end
end
if VehTotal >= 4 then return end
Après c'est pas le plus optimisé mais fonctionne ;)
 
  • Initiateur de la discussion
Wabel

Wabel

Je ne sais pas quoi mettre
Messages
2 262
Score réaction
707
Points
330
slownls à dit:
Effectivement, sinon tu peut set une valeur à l'entité et le trié par la suite :

Code:
local VehTotal = 0
for k,v in pairs( ents.FindByClass("prop_vehicle_jeep") ) do if v.IsCPCarDealer then VehTotal = VehTotal + 1 end
end
if VehTotal >= 4 then return end
Après c'est pas le plus optimisé mais fonctionne ;)
Alors j'ai essayé le truc de @brh450 et comme par sorcellerie, magie noire ou maraboutage, cela fonctionne, lorsque je prend un véhicule commissaire je peux en prendre qu'1 alors que quand on est civil protection on peux en prendre 5. J'avoue que je ne comprend pas la.
 
  • J'aime
Réactions: brh450 et Membre supprimé 85513
M

Membre supprimé 85513

Anonyme
WabelGame à dit:
Alors j'ai essayé le truc de @brh450 et comme par sorcellerie, magie noire ou maraboutage, cela fonctionne, lorsque je prend un véhicule commissaire je peux en prendre qu'1 alors que quand on est civil protection on peux en prendre 5. J'avoue que je ne comprend pas la.
 
brh450

brh450

Geek suprême
Messages
611
Score réaction
180
Points
120
J’avais mal compris je croyais que tu voulais 5 véhicules max sur le serv ^^
 
  • Initiateur de la discussion
Wabel

Wabel

Je ne sais pas quoi mettre
Messages
2 262
Score réaction
707
Points
330
brh450 à dit:
J’avais mal compris je croyais que tu voulais 5 véhicules max sur le serv ^^
Non en fait si tu veux j’ai un derma ou on a 2 véhicules possible en policier, et je voulais qu’on puisse prendre 5vehicules maximum et quand on est commissaire les boutons du derma change et on se retrouve avec 2 autres vehicules mais sauf que celui-ci on ne peux en prendre qu’un.
Mais sauf que sa marche et je comprend pas pourquoi pour le coup
 
Discord d'entraide
Rejoignz-nous sur Discord