Français Suppression des véhicules en cop

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

Enzo2991

User
2/2/20
120
19
25
1 150
Bienvenue dans ce tutoriel qui vous permettra de supprimer les véhicules en cop
Ce tutoriel fait suite à la demande de R Remox


Pour commence, aller dans le dossier core\vehicle et trouver le fichier fn_vInteractionMenu.sqf
Ajouter un bouton comme ceci(Vous pouvez changer le _btn2 ceci est un exemple) :
Code:
Développer Réduire Copier
_Btn2 ctrlSetText "Supprimer le véhicule";
_Btn2 buttonSetAction "_dbInfo = life_vInact_curTarget getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""Life_fnc_copDeleteVehicle"",2];}; deleteVehicle life_vInact_curTarget; closeDialog 0;";
Ensuite, a la racine de votre mission , trouver le fichier CfgRemoteExec.hpp
et ajouter dans la class Functions cette ligne
Code:
Développer Réduire Copier
F(life_fnc_copDeleteVehicle,SERVER)
Apres, a la racine de votre mission , trouver le fichier Function.hpp
trouver cette ligne
Code:
Développer Réduire Copier
class wantedGrab {};
rajouter en dessous
Code:
Développer Réduire Copier
class copDeleteVehicle {};
Enfin , aller dans votre dossier core\cop et creer un fichier nommé fn_copDeleteVehicle.sqf
et ajouter dedans
Code:
Développer Réduire Copier
/*
    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;
Si vous souhaitez enlever l'assurance du véhicule en plus utilisé celui-ci

Code:
Développer Réduire Copier
/*
    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', insure='0' WHERE pid='%1' AND plate='%2'",_uid,_plate];
[_query,1] call DB_fnc_asyncCall;


Cordialement,
Forum Moderator Enzo, avec la collaboration de R Remox
 
Dernière édition par un modérateur:
Non il ne permet pas de supprimer le véhicule de la bdd mais il permet de l'enlever pour les joueurs
 
Bonjour j'ai enté de mettre la focntion avec radial men u et le véhicule ne disparait pas
Code:
Développer Réduire Copier
        class button_16 {
            displayName = "Détruire véhicule";
            buttonAction = "_dbInfo = life_vInact_curTarget getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""life_fnc_copDeleteVehicle"",2];}; deleteVehicle life_vInact_curTarget; closeDialog 0;";
            buttonToolTip = "";
            side[] = {west};
            disable = false;
            condition = "";
        };
 
Salut Teravince Teravince ,

Essaye comme ceci :
C++:
Développer Réduire Copier
buttonAction = "_dbInfo = cursorObject getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""Life_fnc_copDeleteVehicle"",2];}; deleteVehicle cursorObject; closeDialog 0;";
 
  • Like
Les réactions: Teravince
bonjour j'utilise Ace interaction et cela ne marche pas, je pense que buttonAction est pas bon pour ace vous avez une idée de quoi mètre?
 
Hello ! Avec ACE il faut remplacer :
Code:
Développer Réduire Copier
life_vInact_curTarget
par :
Code:
Développer Réduire Copier
cursorObject
Si ça ne fonctionne toujours pas, tu peux envoyer ton fichier de config des interactions de ACE :)
 
Oui, au lieu de mettre ça :
Code:
Développer Réduire Copier
_Btn2 ctrlSetText "Supprimer le véhicule";
_Btn2 buttonSetAction "_dbInfo = life_vInact_curTarget getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""Life_fnc_copDeleteVehicle"",2];}; deleteVehicle life_vInact_curTarget; closeDialog 0;";
Tu peux mettre la même chose, mais avec une condition :
Code:
Développer Réduire Copier
if ((call life_adminlevel) >= 1) then {
    _Btn2 ctrlSetText "Supprimer le véhicule";
    _Btn2 buttonSetAction "_dbInfo = life_vInact_curTarget getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""Life_fnc_copDeleteVehicle"",2];}; deleteVehicle life_vInact_curTarget; closeDialog 0;";
};
 
Pour ajouter une progress bar lors de la suppression du véhicule, une solution a été donnée ici :
 
Activité
Pour l'instant, il n'y a personne ici