Français Solved [Job System] Spawn d'un véhicule aléatoire parmi une liste

  • Auteur de la discussion Auteur de la discussion anto carlito
  • Date de début Date de début
29/12/19
69
2
300
bonjour, je voudrais faire en sorte que il y ai une liste et qu'il est un véhicule choisi au hasard pour les job
j ai essayé ceci mais rien
Code:
_classe_celect = selectRandom ["C_Van_01_box_F","B_Quadbike_01_F","C_Hatchback_01_F"];
classname_vehicle = _classe_celect;
 
Dernière édition par un modérateur:
Solution
Hello! Dans ton jobs.cpp, trouve cette ligne (pour chacun des jobs) :
Code:
classname_vehicle = "C_Van_01_box_F";
et remplace là par celle-ci pour mettre ta liste :
Code:
classname_vehicles[] = {"C_Van_01_box_F","B_Quadbike_01_F","C_Hatchback_01_F"};

Dans les fichiers delivry.sqf, garbage.sqf, repair.sqf et roadman.sqf trouve cette ligne :
Code:
[(getPlayerUID player), _sp, player, markerDir _x, [getText (config_job >> "extras" >> "classname_vehicle"), 2, getText (config_job >> "extras" >> "text_plate_vehicle"), getArray (config_job >> "extras" >> "vehicle_skin")]] remoteExec ["TP_JobSystem_fnc_spawnVehicle", 2];
et remplace-la par :
Code:
_vehicle = selectRandom (getArray (config_job >> "extras" >>...
--- Ce message a été généré automatiquement par ChatGPT, le contenu peut être incorrect. Veuillez lire le message avec précaution ! ---

Bonjour,

Votre approche est presque correcte. Pour sélectionner un véhicule au hasard dans une liste de classes de véhicules, vous pouvez utiliser la fonction selectRandom. Voici une correction de votre code :

Code:
= selectRandom ["C_Van_01_box_F","B_Quadbike_01_F","C_Hatchback_01_F"];

Assurez-vous également que la variable classname_vehicle est correctement déclarée et utilisée plus tard dans votre script. N'hésitez pas à consulter la documentation de SQF pour plus d'informations.

N'oubliez pas de vous assurer que le script est appelé au bon moment pour affecter le véhicule choisi aléatoirement au job.

--- Pour continuer la discussion avec ChatGPT, cliquez sur "Répondre" en bas à droite de ce message. Sinon, attendez que quelqu'un vous réponde. ---
 
Hello! Dans ton jobs.cpp, trouve cette ligne (pour chacun des jobs) :
Code:
classname_vehicle = "C_Van_01_box_F";
et remplace là par celle-ci pour mettre ta liste :
Code:
classname_vehicles[] = {"C_Van_01_box_F","B_Quadbike_01_F","C_Hatchback_01_F"};

Dans les fichiers delivry.sqf, garbage.sqf, repair.sqf et roadman.sqf trouve cette ligne :
Code:
[(getPlayerUID player), _sp, player, markerDir _x, [getText (config_job >> "extras" >> "classname_vehicle"), 2, getText (config_job >> "extras" >> "text_plate_vehicle"), getArray (config_job >> "extras" >> "vehicle_skin")]] remoteExec ["TP_JobSystem_fnc_spawnVehicle", 2];
et remplace-la par :
Code:
_vehicle = selectRandom (getArray (config_job >> "extras" >> "classname_vehicles"));
[(getPlayerUID player), _sp, player, markerDir _x, [_vehicle, 2, getText (config_job >> "extras" >> "text_plate_vehicle"), getArray (config_job >> "extras" >> "vehicle_skin")]] remoteExec ["TP_JobSystem_fnc_spawnVehicle", 2];

Puis toujours dans ces 4 fichiers, trouve cette ligne :
Code:
if ((typeOf _x) isEqualTo getText (config_job >> "extras" >> "classname_vehicle") && {_owner isEqualTo (getPlayerUID player)}) then {
et remplace-là par :
Code:
if ((typeOf _x) in getArray (config_job >> "extras" >> "classname_vehicles") && {_owner isEqualTo (getPlayerUID player)}) then {
 
Solution