Français Solved Gestion des fiches dans l'Interpole

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

Lteixx2

User
26/1/20
99
3
12
300
Usa
meettomy.site
Bonjour,

J'aimerais avoir la possibilité de soit archiver la fiche ou soit supprimer la fiche de l'interpole.

Car quand la personnes paye elle reste toujours présente dans l'interpole.
 
Solution
Y'a pas mal de modifications à faire donc je vais te donner les grandes lignes :
Dans ton maxence_list_interpol.hpp créer un nouveau bouton avec pour action :
Code:
onButtonClick = "[] spawn life_fnc_interpolDelete;";
Dans ton functions.hpp de ta mission, créer une nouvelle fonction :
Code:
class interpolDelete;
En fonction du dossier où tu as défini la nouvelle fonction, créer un fichier fn_interpolDelete.sqf avec ceci à l'intérieur :
Code:
/*
    Author: Maxence for The-Programmer Forum
*/
disableSerialization;
if ((lbCurSel 6003) isEqualTo -1) exitWith {hint "Aucun dossier n'a été selectionnée !"};
_data = lbData [6003,(lbCurSel 6003)];
_data = call compile format ["%1",_data];

hint "Suppression du dossier...
J'étais en train de voir pour faire une mise à jour et ajouter cette fonctionnalité mais en fait tu peux pas enlever les joueurs qui ont été ajoutés à Interpol mais tu peux mettre les crimes comme étant "payés" (en vert) ou alors les enlever. Est-ce que tu as vraiment besoin de pourvoir supprimer les profils ?
 
Y'a pas mal de modifications à faire donc je vais te donner les grandes lignes :
Dans ton maxence_list_interpol.hpp créer un nouveau bouton avec pour action :
Code:
onButtonClick = "[] spawn life_fnc_interpolDelete;";
Dans ton functions.hpp de ta mission, créer une nouvelle fonction :
Code:
class interpolDelete;
En fonction du dossier où tu as défini la nouvelle fonction, créer un fichier fn_interpolDelete.sqf avec ceci à l'intérieur :
Code:
/*
    Author: Maxence for The-Programmer Forum
*/
disableSerialization;
if ((lbCurSel 6003) isEqualTo -1) exitWith {hint "Aucun dossier n'a été selectionnée !"};
_data = lbData [6003,(lbCurSel 6003)];
_data = call compile format ["%1",_data];

hint "Suppression du dossier en cours....";

[(_data select 0)] remoteExec ["TON_fnc_interpolDeleteFile",2];

uiSleep 4;
closeDialog 0;
[0] remoteExec ["max_interpol_fnc_getInterpol",2];

hint "Le dossier à été supprimé !";
Dans le CfgRemoteExec.hpp de ta mission, ajoute ceci :
Code:
F(TON_fnc_interpolDeleteFile,SERVER)

Maintenant, dans ton life_server, ajoute un nouvelle fonction dans ton config.cpp :
Code:
class interpolDeleteFile;
Et en fonction du dossier, créer un fichier fn_interpolDeleteFile.sqf avec ceci à l'intérieur :
Code:
/*
    Author: Maxence for The-Programmer Forum
*/
_id = param [0,-1,[0]];
if (_id isEqualTo -1) exitWith {};

_query1 = format ["DELETE FROM interpol WHERE id='%1'",_id];
[_query1,1] call DB_fnc_asyncCall;

_query2 = format ["DELETE FROM interpol_crimes WHERE interpol_id='%1'",_id];
[_query2,1] call DB_fnc_asyncCall;

Dis moi si ça fonctionne :)
 
Solution
Eh bien, soit avec un editeur de dialog classique, soit un peu au hasard en modifiant les coordonnées x et y de ce bouton :
Code:
class Remove : Life_RscButtonMenu
{
   idc = -1;
   text = "-";
   colorbackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", 0.5};
   onbuttonclick = "[] spawn life_fnc_interpolDelete;";
   x = 0.640625 * safezoneW + safezoneX;
   y = 0.643472090823084 * safezoneH + safezoneY;
   w = 0.0192708333333333 * safezoneW;
   h = 0.0238599810785239 * safezoneH;
   class Attributes {align = "center";};
};
J'ai essayé de le positionner à peu près par ici mais tu veux le mettre autre pars tu peux :)
1580817194002.png
 
Ah en fait tu l'as mis dans le dossier MySQL du life_server qui est le seul dossier à avoir un préfix différent (DB_fnc_ au lieu de TON_fnc_). Le plus simple c'est de déplacer le fichier dans le dossier Systems par exemple et de déplacer la ligne dans le config.cpp de ton life_server également :)