Français Solved Afficher la plaque d'immatriculation dans le menu de la fourrière

  • Auteur de la discussion Auteur de la discussion Nicolas RUBIO
  • Date de début Date de début
26/4/21
7
0
250
Bonjour,
Je viens vers vous car je souhaiterais afficher le numéro de la plaque dans le menu de la fourrière.
Merci d'avance pour votre aide :)
 
Solution
BastienWolf BastienWolf ça fonctionne mais pour récupérer la plaque à partir d'un véhicule qui est physiquement présent sur le serveur, ce qui n'est pas le cas dans le garage comme c'est que des inscriptions DB



N Nicolas RUBIO Dans ton @The_Programmer/addons/impound/server/fn_getFourriere.sqf, remplace cette ligne :
Code:
_query = format ["SELECT id, classname, pid, color, plate FROM vehicles WHERE pid='%1' AND alive='1' AND active='0' AND fourriere='1' AND side='%2' AND type='%3'",_pid,_side,_type];
par celle-ci :
Code:
_query = format ["SELECT id, classname, pid, color, plate, immatriculation FROM vehicles WHERE pid='%1' AND alive='1' AND active='0' AND fourriere='1' AND side='%2' AND...
Salut Nicolas, je ne connais pas le script fourrière de the-programmer.
MAIS, tu peux récupérer le plate Info d'un véhicule grâce à une variable :
[CODE title="_vehicle setVariable ["vehicle_info_plate",_immatriculation,true];"]_vehicle getVariable "vehicle_info_plate";[/CODE]
 
BastienWolf BastienWolf ça fonctionne mais pour récupérer la plaque à partir d'un véhicule qui est physiquement présent sur le serveur, ce qui n'est pas le cas dans le garage comme c'est que des inscriptions DB



N Nicolas RUBIO Dans ton @The_Programmer/addons/impound/server/fn_getFourriere.sqf, remplace cette ligne :
Code:
_query = format ["SELECT id, classname, pid, color, plate FROM vehicles WHERE pid='%1' AND alive='1' AND active='0' AND fourriere='1' AND side='%2' AND type='%3'",_pid,_side,_type];
par celle-ci :
Code:
_query = format ["SELECT id, classname, pid, color, plate, immatriculation FROM vehicles WHERE pid='%1' AND alive='1' AND active='0' AND fourriere='1' AND side='%2' AND type='%3'",_pid,_side,_type];
et remplace cette ligne :
Code:
_query = format ["SELECT vehicles.id, vehicles.classname, vehicles.pid, vehicles.color, vehicles.plate, players.name FROM vehicles INNER JOIN players WHERE vehicles.alive='1' AND vehicles.active='0' AND vehicles.fourriere='1' AND vehicles.type='%1' AND vehicles.pid=players.%2",_type,_idColumName];
par :
Code:
_query = format ["SELECT vehicles.id, vehicles.classname, vehicles.pid, vehicles.color, vehicles.plate, players.name, vehicles.immatriculation FROM vehicles INNER JOIN players WHERE vehicles.alive='1' AND vehicles.active='0' AND vehicles.fourriere='1' AND vehicles.type='%1' AND vehicles.pid=players.%2",_type,_idColumName];

Dans ton @The_Programmer/addons/impound/client/fn_garageLBChangevehFourriere.sqf, en dessous de :
Code:
(_display displayCtrl 5014) ctrlSetStructuredText parseText format [
ajoute cette ligne :
Code:
"Plaque d'immatriculation : %5" +
Trouve cette ligne :
Code:
[_retrievePrice] call life_fnc_numberText
ajoute une virgule à la fin de la ligne et met en dessous :
Code:
if (_pid isEqualTo "all") then {_vehicleData select 6} else {_vehicleData select 5}

J'espère que ça fonctionnera :)
 
Solution
Bonsoir,

Avant que Mathis ou un autre pose la question dans quelques semaines, ;)
Oui çà fonctionne impeccable Maxence et merci (y)

En rajoutant les balises comme ceci, pour garder la mise en page d'origine du script.

Code:
"Plaque d'immatriculation : <t color='#32A832'>%5</t><br/>" +

EDIT :

Du coup, sur un coup de folie, pensant avoir enfin compris les query etc :sneaky:
J'ai voulu rajouter une autre info provenant de la table véhicule : le motif de l'immobilisation via le sabot :

Du coup dans mon GetFourriere j'ai écris :


Code:
_query = format ["SELECT id, classname, pid, color, plate, immatriculation, fine FROM vehicles WHERE pid='%1' AND alive='1' AND active='0' AND fourriere='1' AND side='%2' AND type='%3'",_pid,_side,_type];
et
Code:
_query = format ["SELECT vehicles.id, vehicles.classname, vehicles.pid, vehicles.color, vehicles.plate, players.name, vehicles.immatriculation, vehicles.fine FROM vehicles INNER JOIN players WHERE vehicles.alive='1' AND vehicles.active='0' AND vehicles.fourriere='1' AND vehicles.type='%1' AND vehicles.pid=players.%2",_type,_idColumName];

Et côté GarageLBChange :

Code:
(_display displayCtrl 5014) ctrlSetStructuredText parseText format [
    
    (["STR_OWNER","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + " : <t color='#32A832'>%1</t><br/>" + 
    (["STR_MODEL","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + " : <t color='#32A832'>%2</t><br/>" +
    (["STR_COLOR","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + " : <t color='#32A832'>%3</t><br/>" +
    "Plaque d'immatriculation : <t color='#32A832'>%5</t><br/>" +
    "Motif de l'immobilisation :<t color='#32A832'>%6</t><br/>" +
    (["STR_UNIMPOUND_FEE","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + " : <t color='#32A832'>%4 " + (["STR_MONEY","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + "</t>", //Frais de sortie
    if (_pid isEqualTo "all") then {_vehicleData select 5} else {name player},
    getText (configFile >> "CfgVehicles" >> _className >> "displayName"),
    _vehicleColor,
    [_retrievePrice] call life_fnc_numberText,
    if (_pid isEqualTo "all") then {_vehicleData select 6} else {_vehicleData select 5},
    _fine
];

Et là je bloque sur comment "définir" mon _fine un peu plus haut comme l'est le _vehiculecolor :

Code:
_vehicleColor = (((getArray (missionConfigFile >> "LifeCfgVehicles" >> _classNameLife >> "textures")) select (_vehicleData select 3)) select 0);

Merci d'avance pour le coup de main :giggle:
 
Dernière édition:
C'est un peu particulier parce qu'il y a deux requêtes différentes avec des longueurs différentes selon les cas, mais _fine doit être défini comme ceci pour toi :
Code:
_fine = if (_pid isEqualTo "all") then {_vehicleData select 7} else {_vehicleData select 6};

J'ai pas tout à fait compris le rapport avec _vehicleColor :unsure:
 
  • Heart
Les réactions: Joe Dalton
Alors ... El Professor Yuri Zoko Yuri Zoko est passé entre temps 💪 La rumeur dit qu'un jour il va faire un tuto sur le sujet 😹

Je mets le résultat final et fonctionnel à titre d'exemple, mais comme tu dis Maxence, là c'est particulier avec le sabot : 2 requêtes d'infos contenus dans une requête qui en contient 4... (J'explique très mal :P)


Code:
private _immobilisation = if (_pid isEqualTo "all") then {_vehicleData select 7} else {_vehicleData select 6};


(_display displayCtrl 5014) ctrlSetStructuredText parseText format [   
    (["STR_OWNER","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + " : <t color='#32A832'>%1</t><br/>" + 
    (["STR_MODEL","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + " : <t color='#32A832'>%2</t><br/>" +
    (["STR_COLOR","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + " : <t color='#32A832'>%3</t><br/>" +
    "Plaque d'immatriculation : <t color='#32A832'>%5</t><br/>" +
    "Motif de l'immobilisation : <t color='#fc0505'>%6 </t><br/>Montant de l'amende : <t color='#32A832'>%7€ </t><br/>" +
    (["STR_UNIMPOUND_FEE","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + " : <t color='#fc0505'>%4 " + (["STR_MONEY","Max_Settings_Fourriere","Fourriere_Localization"] call theprogrammer_core_fnc_localize) + "</t>", //Frais de sortie
    if (_pid isEqualTo "all") then {_vehicleData select 5} else {name player},
    getText (configFile >> "CfgVehicles" >> _className >> "displayName"),
    _vehicleColor,
    [_retrievePrice] call life_fnc_numberText,
    if (_pid isEqualTo "all") then {_vehicleData select 6} else {_vehicleData select 5},
    (_immobilisation select 2),
    (_immobilisation select 3)
];


Merci beaucoup, problème résolu pour ma part 😘
 
  • Like
Les réactions: Yuri Zoko