Français Solved Comment empêcher l'assurance de fonctionner lorsqu'un véhicule est détruit par la gendarmerie?

  • Auteur de la discussion Auteur de la discussion Remox
  • Date de début Date de début

Remox

User
22/1/20
18
0
100
Bonjour,

Je souhaiterai savoir comment faire pour que l'Assurance ne fonctionne pas lorsque la gendarmerie détruit un véhicule. Je souhaiterai également savoir comment faire pour que la gendarmerie puisse détruire un véhicule via le menu Windows...

Merci d'avance,
Bonne journée
 
Solution
Il n'y a pas de méthode vraiment très simple. Mais voici comment faire :
Dans ton fn_vInteractionMenu.sqf, ajoute ceci (en changant la variable _Btn2 par un nouveau bouton par exemple) :
Code:
_Btn2 ctrlSetText "Supprimer le véhicule";
_Btn2 buttonSetAction "_dbInfo = life_vInact_curTarget getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""TON_fnc_copDeleteVehicle"",2];}; deleteVehicle life_vInact_curTarget; closeDialog 0;";
Dans ton CfgRemoteExec.hpp ajoute un nouvelle fonction autorisée :
Code:
F(life_fnc_copDeleteVehicle,SERVER)
Dans le config.cpp ajoute une nouvelle fonction : copDeleteVehicle
Créér le fichier fn_copDeleteVehicle.sqf à l'endroit où tu as défini la fonction (dans le...
Il n'y a pas de méthode vraiment très simple. Mais voici comment faire :
Dans ton fn_vInteractionMenu.sqf, ajoute ceci (en changant la variable _Btn2 par un nouveau bouton par exemple) :
Code:
_Btn2 ctrlSetText "Supprimer le véhicule";
_Btn2 buttonSetAction "_dbInfo = life_vInact_curTarget getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""TON_fnc_copDeleteVehicle"",2];}; deleteVehicle life_vInact_curTarget; closeDialog 0;";
Dans ton CfgRemoteExec.hpp ajoute un nouvelle fonction autorisée :
Code:
F(life_fnc_copDeleteVehicle,SERVER)
Dans le config.cpp ajoute une nouvelle fonction : copDeleteVehicle
Créér le fichier fn_copDeleteVehicle.sqf à l'endroit où tu as défini la fonction (dans le bon dossier quoi) et met à l'intérieur du fichier :
Code:
/*
    Author: Maxence for The-Programmer Forum

    Description:
    Put alive='0' to delete vehicle in database
*/
_dbInfo = _this;
if ((count _dbInfo) == 0) exitWith {};

_uid = (_dbInfo select 0);
_plate = (_dbInfo select 1);

_query = format ["UPDATE vehicles SET alive='0' WHERE pid='%1' AND plate='%2'",_uid,_plate];
[_query,1] call DB_fnc_asyncCall;
Je n'ai pas testé, mais je pense que ça devrait fonctionner
 
  • Like
Les réactions: Remox
Solution
Il n'y a pas de méthode vraiment très simple. Mais voici comment faire :
Dans ton fn_vInteractionMenu.sqf, ajoute ceci (en changant la variable _Btn2 par un nouveau bouton par exemple) :
Code:
_Btn2 ctrlSetText "Supprimer le véhicule";
_Btn2 buttonSetAction "_dbInfo = life_vInact_curTarget getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""TON_fnc_copDeleteVehicle"",2];}; deleteVehicle life_vInact_curTarget; closeDialog 0;";
Dans ton CfgRemoteExec.hpp ajoute un nouvelle fonction autorisée :
Code:
F(life_fnc_controleDrogue,SERVER)
Dans le config.cpp ajoute une nouvelle fonction : copDeleteVehicle
Créér le fichier fn_copDeleteVehicle.sqf à l'endroit où tu as défini la fonction (dans le bon dossier quoi) et met à l'intérieur du fichier :
Code:
/*
    Author: Maxence for The-Programmer Forum

    Description:
    Put alive='0' to delete vehicle in database
*/
_dbInfo = _this;
if ((count _dbInfo) == 0) exitWith {};

_uid = (_dbInfo select 0);
_plate = (_dbInfo select 1);

_query = format ["UPDATE vehicles SET alive='0' WHERE pid='%1' AND plate='%2'",_uid,_plate];
[_query,1] call DB_fnc_asyncCall;
Je n'ai pas testé, mais je pense que ça devrait fonctionner
Merci !
 
Perso j'ajouterais une petite solution pour que tu remoteExec un script coté UID du joueur à qui appartiens la voiture :D
genre un petit :

CSS:
_dbInfo = life_vInact_curTarget getVariable ["dbInfo",[]];
_dbinfoUID = _dbinfo select 0;
[_dbinfo] remoteExec ["life_fnc_Script", _dbinfoUID];

Alors attention, c'est à titre d'exemple,ça ne fonctionnera pas si tu fait un copier coller bêtement :D
 
  • Like
Les réactions: Remox