Français Solved Comment déterminer si tous les membres de l'entreprise sont déconnectés

  • Auteur de la discussion Auteur de la discussion Gégé
  • Date de début Date de début

Gégé

User
14/11/20
13
0
400
Salut , Je cherche a determiné sur le membres d'une entreprise du Compagny système est connecté , dans le but de créer un script si les membres de l'entreprise " entreprise_1 " est offlines alors le script peut s'effectué ,

Merci d'avence :)
 
Solution
Alors, j'en ai fait une fonction :

[CODE lang="cpp" title="IsCompanyOnline"]#include "..\..\script_macros.hpp"
/*
File: fn_isCompanyOnline.sqf
Author: Adonis "BastienWolf" Johnson & The-Programmer
Description: Check if a player in a company is Online
*/
params [
["_idEntreprise",0,[0]]
];

_entrepriseObj = objNull;
{
_testEntreprise = _x select 1;

if ((_testEntreprise getvariable ["entreprise_id",0]) isEqualTo _idEntreprise) exitWith {
_entrepriseObj = _testEntreprise;
};
} forEach maxence_all_entreprises;

if (isNull _entrepriseObj) exitWith {};
_unMembreEstEnLigne = false;

{
_xPID = getPlayerUID _x;

{
if ((_x select 0) isEqualTo _xPID) exitWith {
_unMembreEstEnLigne = true;
};
} forEach...
Biensur en gros je veut faire un script réparation à 100% si les Dépanneur sont déconnecté et c'est ce que je cherche à déterminé ^^
 
C'est un peu plus qu'une variable, mais voici le code à utiliser :
Code:
_entrepriseObj = objNull;
_idEntreprise = 1; // A modifier si besoin

{
    _testEntreprise = _x select 1;

    if ((_testEntreprise getvariable ["entreprise_id",0]) isEqualTo _idEntreprise) exitWith {
        _entrepriseObj = _testEntreprise;
    };
} forEach maxence_all_entreprises;

if (isNull _entrepriseObj) exitWith {};

_unMembreEstEnLigne = false;

{
    _xPID = getPlayerUID _x;

    {
        if ((_x select 0) isEqualTo _xPID) exitWith {
            _unMembreEstEnLigne = true;
        };
    } forEach (_entrepriseObj getVariable ["entreprise_members",[]]);

    if (_unMembreEstEnLigne) exitWith {};
} forEach playableUnits;

hint str _unMembreEstEnLigne;
 
Alors, j'en ai fait une fonction :

[CODE lang="cpp" title="IsCompanyOnline"]#include "..\..\script_macros.hpp"
/*
File: fn_isCompanyOnline.sqf
Author: Adonis "BastienWolf" Johnson & The-Programmer
Description: Check if a player in a company is Online
*/
params [
["_idEntreprise",0,[0]]
];

_entrepriseObj = objNull;
{
_testEntreprise = _x select 1;

if ((_testEntreprise getvariable ["entreprise_id",0]) isEqualTo _idEntreprise) exitWith {
_entrepriseObj = _testEntreprise;
};
} forEach maxence_all_entreprises;

if (isNull _entrepriseObj) exitWith {};
_unMembreEstEnLigne = false;

{
_xPID = getPlayerUID _x;

{
if ((_x select 0) isEqualTo _xPID) exitWith {
_unMembreEstEnLigne = true;
};
} forEach (_entrepriseObj getVariable ["entreprise_members",[]]);

if (_unMembreEstEnLigne) exitWith {};
} forEach playableUnits;

_unMembreEstEnLigne;[/CODE]

Et dans mes scripts, je call la fonction comme ça :
Code:
_isOnline = [5] spawn life_fnc_IsCompanyOnline;

if (_isOnline) then {
    Hint "Un membre de l'entreprise est connecté";
} else {
    Hint "Aucun membre de l'entreprise n'est connecté";
};
 
Dernière édition par un modérateur:
  • Like
Les réactions: Maxence
Solution