Français [Dispatch System] Accéder au dispatch pour les dépanneurs

  • Auteur de la discussion Auteur de la discussion Loic Shmit
  • Date de début Date de début

Loic Shmit

User
25/8/18
40
2
35
300
the-programmer.com
vdgrg-ConvertImage.png

Bonjour et bienvenue sur ce tutoriel qui vous permettra de donner accès au dispatch dépanneur depuis leur téléphone.
Ce tutoriel fait suite à la demande d'aide de Okaneto Okaneto

C'est parti !

Dans le dossier @The_Programmer/addons/dispatch/client et pour tous les fichiers suivants : fn_acceptCall.sqf, fn_addWaypoint.sqf, fn_callAgain.sqf, fn_deleteCall.sqf, fn_lbChangedCallsMenu.sqf, fn_lbChangedMessage.sqf, fn_sendMessageManagement.sqf, fn_showCall.sqf :
Trouver ces 6 lignes :
Code:
Développer Réduire Copier
_var = switch (playerSide) do {
    case west : {maxence_waiting_cop_calls};
    case independent : {maxence_waiting_med_calls};
    case east : {maxence_waiting_east_calls};
    default {[]};
};
et ajouter en dessous (dans chaque fichier) :
Code:
Développer Réduire Copier
if (missionNamespace getVariable ["license_civ_depanneur",false]) then {_var = maxence_waiting_dep_calls;};
Vous pouvez adapter license_civ_depanneur à votre licence dépanneur, évidement :)

Dans votre @The_Programmer/addons/dispatch/client/fn_replyCall.sqf trouvez ces lignes :
Code:
Développer Réduire Copier
switch (playerSide) do {
    case west : {_var = maxence_waiting_cop_calls; _displayNumber = str (getNumber (_curConfig >> "num_cop"));};
    case independent : {_var = maxence_waiting_med_calls; _displayNumber = str (getNumber (_curConfig >> "num_med"));};
    case east : {_var = maxence_waiting_east_calls; _displayNumber = str (getNumber (_curConfig >> "num_east"));};
    default {};
};
et ajouter en dessous :
Code:
Développer Réduire Copier
if (missionNamespace getVariable ["license_civ_depanneur",false]) then {_var = maxence_waiting_dep_calls; _displayNumber = str (getNumber (_curConfig >> "num_dep"));};
Vous pouvez adapter license_civ_depanneur à votre licence dépanneur également.

Dans votre @The_Programmer/addons/dispatch/client/fn_openCallsManagementMenu.sqf trouver cette ligne :
Code:
Développer Réduire Copier
if !(playerSide in [west,independent,east]) exitWith {hint (["STR_ACCES_DENIED","Max_Settings_Dispatch","Dispatch_Localization"] call theprogrammer_core_fnc_localize);};
et remplacez-là par :
Code:
Développer Réduire Copier
if (!(playerSide in [west,independent,east]) && !(missionNamespace getVariable ["license_civ_depanneur",false])) exitWith {hint (["STR_ACCES_DENIED","Max_Settings_Dispatch","Dispatch_Localization"] call theprogrammer_core_fnc_localize);};
Dans le même fichier, trouver ces 6 lignes :
Code:
Développer Réduire Copier
_newVar = switch (playerSide) do {
    case west : {maxence_waiting_cop_calls};
    case independent : {maxence_waiting_med_calls};
    case east : {maxence_waiting_east_calls};
    default {[]};
};
et ajouter en dessous :
Code:
Développer Réduire Copier
if (missionNamespace getVariable ["license_civ_depanneur",false]) then {_newVar = maxence_waiting_dep_calls;};

Dans votre @The_Programmer/addons/dispatch/client/fn_deleteCall.sqf trouver cette ligne :
Code:
Développer Réduire Copier
_requestList lbDelete _curSelection;
et ajouter en dessous :
Code:
Développer Réduire Copier
if (missionNamespace getVariable ["license_civ_depanneur",false]) then {maxence_waiting_dep_calls deleteAt _curSelection; publicVariable "maxence_waiting_dep_calls";};

Dans votre @The_Programmer/addons/dispatch/client/fn_sendMessageManagement.sqf trouver ces lignes :
Code:
Développer Réduire Copier
_number = switch (playerSide) do {
    case west : {str (getNumber (missionConfigFile >> "Max_Settings_Phone" >> "num_cop"))};
    case independent : {str (getNumber (missionConfigFile >> "Max_Settings_Phone" >> "num_med"))};
    case east : {str (getNumber (missionConfigFile >> "Max_Settings_Phone" >> "num_east"))};
    default {"??"};
};
et ajouter en dessous :
Code:
Développer Réduire Copier
if (missionNamespace getVariable ["license_civ_depanneur",false]) then {_number = str (getNumber (missionConfigFile >> "Max_Settings_Phone" >> "num_dep"));};

Dans le fichier @The_Programmer/addons/dispatch/server/fn_serverInitDispatch.sqf, ajouter à la fin :
Code:
Développer Réduire Copier
maxence_waiting_dep_calls = [];
publicVariable "maxence_waiting_dep_calls";

Pour ajouter les messages au dispatch des dépanneurs avec Phone Numbers ou Advanced Phone, dans votre @The_Programmer/addons/advanced_phone/client/fn_sendMSG.sqf, trouver cette ligne :
Code:
Développer Réduire Copier
[_message,"**********",6,"",player] remoteExec ["max_phone_fnc_clientMessage",-2];
et ajouter en dessous :
Code:
Développer Réduire Copier
maxence_waiting_dep_calls pushBack ["**********","",_message,servertime,"",player,0];
publicVariable "maxence_waiting_dep_calls";
Dans le même fichier, en dessous de cette ligne :
Code:
Développer Réduire Copier
[_message,_fromNum,6,(mapGridPosition player),player] remoteExec ["max_phone_fnc_clientMessage",-2];
ajouter :
Code:
Développer Réduire Copier
maxence_waiting_dep_calls pushBack [(name player),(position player),_message,servertime,"",player,0];
publicVariable "maxence_waiting_dep_calls";

Pour ajouter les appels au disptach des dépanneurs avec Advanced Phone dans votre @The_Programmer/addons/advanced_phone/client/fn_sendCall.sqf, trouver ces lignes :
Code:
Développer Réduire Copier
case 3 : { // NUM DEP
    _fn_findStandardDepanneur = {
        {
            if (_x getVariable "getCalls_dep") exitWith {
                _x;
            };
            objNull
        } foreach playableUnits;
    };
    _playerTo = _toNum call _fn_findStandardDepanneur;

    if (isNull _playerTo) exitWith {
        uiSleep 1;
        hint (["STR_NO_DEP_CALL","Max_Settings_Phone","Phone_Localization"] call theprogrammer_core_fnc_localize);
        _exit = true;
    };
};
et remplacer les par :
Code:
Développer Réduire Copier
case 3 : { // NUM DEP
    [] spawn {
        _name = name player;
        _pos = getPos player;
        _phoneNumber = player getVariable ["maxence_numero",""];
        if (player getVariable ["calling_ano",false]) then {
            _name = (["STR_ANONYM_CALL","Max_Settings_Dispatch","Dispatch_Localization"] call theprogrammer_core_fnc_localize);
            _pos = "";
            _phoneNumber = "**********";
        };

        maxence_waiting_dep_calls pushBack [_name,_pos,"",servertime,"",player,1];
        publicVariable "maxence_waiting_dep_calls";
        player setVariable ["calls_management_call_status",0,true];

        ["Un appel d'urgence est en attente, veuillez vous rendre sur le centre de dispatch pour y répondre !",_phoneNumber,6,(mapGridPosition _pos),player] remoteExec ["max_phone_fnc_clientMessage",-2];
        hint "Votre appel est bien enregistré, veuillez patienter quelques instants le temps qu'un dépanneur réponde à votre appel...";

        uiSleep 30;
        if !((player getVariable "calls_management_call_status") isEqualTo 0) exitWith {};
        hint "Votre appel est bien enregistré, veuillez patienter quelques instants le temps qu'un dépanneur réponde à votre appel...";

        uiSleep 30;
        if ((player getVariable "calls_management_call_status") isEqualTo 0) then {
            _toNum = getNumber (missionConfigFile >> "Max_Settings_Phone" >> "num_dep");
            _toNum = [(str _toNum)] call max_phone_fnc_findInContacts;

            hint format [(["STR_AUCUNE_REPONSE","Max_Settings_Dispatch","Dispatch_Localization"] call theprogrammer_core_fnc_localize),_toNum];

            [format ["Vous avez ratté un appel d'urgence de %1 (%2) !",_name,_phoneNumber],_phoneNumber,6,(mapGridPosition _pos),player] remoteExec ["max_phone_fnc_clientMessage",-2];
            player setVariable ["calls_management_call_status",2,true];
            player setVariable ["calling_ano",false,true];
        };
    };
};

Et voila !

N'oubliez pas de modifier la condition pour afficher le bouton Dispatch dans votre menu Y ou dans l'Iphone, voir les réponses ci-dessous.

Cordialement,
Forum Manager Loic Shmit,
avec la collaboration de Okaneto Okaneto
 
Dernière édition par un modérateur:
  • Love
  • Like
Les réactions: MrB et Teravince
Bonjour le bouton dispatch n'apparait pas quand on a la licence dépanneur ces normal ?
Bonjour, je veux pas dire de bêtise (si tu as L'Iphone X) mais tu as ajouté la licence dépanneur dans les conditions du boutons (Config.cpp de l’Iphone X et class CallsManagement) ? Car moi le tuto est fonctionnel.


(((getNumber (missionConfigFile >> ""The_Programmer_Settings_Iphone"" >> ""dispatch_script_enable"")) isEqualTo 1) && (!(playerSide isEqualTo civilian) || license_civ_depanneur))
 
Dernière édition:
Voici la modification à faire dans le ficher config de l’Iphone X, Merci Maxence pour ceci
Code:
Développer Réduire Copier
(((getNumber (missionConfigFile >> ""The_Programmer_Settings_Iphone"" >> ""dispatch_script_enable"")) isEqualTo 1) && (!(playerSide isEqualTo civilian) || license_civ_depanneur))
 
  • Like
Les réactions: Jean-Baptiste et Maxence
Bonjour,
j'ai suivi ce tuto. Mais le dispatch n'apparait pas sur l'Iphone XI.
Pour la condition dans le config de l'iphone j'ai ajouté:
Code:
Développer Réduire Copier
"(((getNumber (missionConfigFile >> ""The_Programmer_IphoneXI"" >> ""dispatch_script_enable"")) isEqualTo 1) && (!(playerSide isEqualTo civilian) || entreprise_8))";

Merci pour votre aide.
 
Oui j’avais bien mit le dispatch_script_enable=true;
J’avais fait une erreur dans ma condition. Du coup maintenant j’ai bien mon dispatch qui s’affiche dans mon tel en tant que dépanneur.
Dernier petit problème, les messages et appel n’apparaissent pas dans le dispatch. Seul le marker apparaît dans la petite carte.
 
Bonjour, $

j'ai appliqué toutes les modifications,
Pourtant j'ai ce message que s'affiche sur mon écran

20221022103459_1.jpg
 
J'ai corrigé une étape du guide, qui a du changer à cause d'une update de Dispatch System. Est-ce que tu peux refaire la modification et ressayer ?
Dans votre @The_Programmer/addons/dispatch/client/fn_openCallsManagementMenu.sqf trouver cette ligne :
Code:
Développer Réduire Copier
if !(playerSide in [west,independent,east]) exitWith {hint (["STR_ACCES_DENIED","Max_Settings_Dispatch","Dispatch_Localization"] call theprogrammer_core_fnc_localize);};
et remplacez-là par :
Code:
Développer Réduire Copier
if (!(playerSide in [west,independent,east]) && !(missionNamespace getVariable ["license_civ_depanneur",false])) exitWith {hint (["STR_ACCES_DENIED","Max_Settings_Dispatch","Dispatch_Localization"] call theprogrammer_core_fnc_localize);};
 
Activité
Pour l'instant, il n'y a personne ici