Français [Duty System] Cigarette/Cigare


Hello a tous,
Les modifications suivante sont a faire seulement si vous possédez le script Duty System et le mod Immersion Cigs.


text.png

Si vous avez ce mod sur votre serveur vous avez déjà eu le soucis suivant les civils peuvent prendre une cigarette du paquet l'allumer et la fumer mais une fois une prise de service coté medic ou cop faite comme par magie plus rien ne fonctionne, j'ai la solution pour vous :

Il suffit d'ajouter les lignes suivantes :

C++:
Développer Réduire Copier
if (!hasInterface) exitWith {};
if !(isClass (configFile >> "CfgPatches" >> "ace_interact_menu")) then {
    private _addVanillaActions = {
        player addAction [localize "STR_murshun_cigs_start_cig", {
            params ["_target", "_caller"];
            [_caller] spawn murshun_cigs_fnc_start_cig_your
        }, nil, 0, false, true, "", "if (_target != player) exitWith {false}; ((goggles _this) in murshun_cigs_cigsArray) && !(_this getVariable ['murshun_cigs_cigLitUp', false])", 5, false];
        player addAction [localize "STR_murshun_cigs_stop_cig", {
            params ["_target", "_caller"];
            [_caller] spawn murshun_cigs_fnc_stop_cig
        }, nil, 0, false, true, "", "if (_target != player) exitWith {false}; ((goggles _this) in murshun_cigs_cigsArray) && (_this getVariable ['murshun_cigs_cigLitUp', false])", 5, false];
        player addAction [localize "STR_murshun_cigs_take_cig_from_pack", {
            params ["_target", "_caller"];
            [_caller] spawn murshun_cigs_fnc_take_cig_from_pack
        }, nil, 0, false, true, "", "if (_target != player) exitWith {false}; 'murshun_cigs_cigpack' in (magazineCargo uniformContainer player)", 5, false];
        player addAction [localize "STR_murshun_cigs_start_someones_cig", {
            params ["_target", "_caller"];
            [cursorObject, _caller] spawn murshun_cigs_fnc_start_cig_his
        }, nil, 0, false, true, "", "if !(cursorObject isKindOf 'Man') exitWith {false}; ((goggles cursorObject) in murshun_cigs_cigsArray) && !(cursorObject getVariable ['murshun_cigs_cigLitUp', false]) && (alive cursorObject)", 5, false];
    };

    call _addVanillaActions;

    player addEventHandler ["Respawn", _addVanillaActions];
} else {
    private _action = ["murshun_cigs_start_someones_cig", localize "STR_murshun_cigs_start_someones_cig", "murshun_cigs\UI\light_cig.paa", {
        params ["_target", "_player"];
        [_target, _player] spawn murshun_cigs_fnc_start_cig_his
    }, {
        params ["_target", "_player"];
        ((goggles _target) in murshun_cigs_cigsArray) && !(_target getVariable ['murshun_cigs_cigLitUp', false]) && (alive _target)
    }] call ace_interact_menu_fnc_createAction;
    ["CAManBase", 0, ["ACE_Head"], _action, true] call ace_interact_menu_fnc_addActionToClass;
};

player addEventHandler ["Respawn", {
    player setVariable ["murshun_cigs_cigLitUp", false];
}];

if (!isMultiplayer && immersion_cigs_giveItemsInSP) then {
    player addItem "murshun_cigs_cigpack";
    player addItem "murshun_cigs_lighter";
};

à la fin des fichiers suivants qui se trouvent dans votre dossier @The_Programmer\addons\duty_system\client :
  • fn_Arreter_Service.sqf
  • fn_Prise_Service_Adac.sqf
  • fn_Prise_Service_Police.sqf
  • fn_Prise_Service_Pompier.sqf
et voila il suffit de repack votre dossier duty_system et relancez votre serveur et le tour est joué.
 
Activité
Pour l'instant, il n'y a personne ici