Français Not solved Comment vérifier l'âge d'un joueur avec un script ?

  • Auteur de la discussion Auteur de la discussion pos038f
  • Date de début Date de début
  • Bonjour Visiteur ! Les sujets de cette catégorie sont clos. Si vous souhaitez réouvrir, merci de nous contacter en précisant le lien du post à réouvrir !

    Hello Visiteur ! The topics in this category are closed. If you wish to reopen, please contact us with the link of the post you wish to reopen !

pos038f

User
29/12/19
124
17
9
1 000
Bonsoir à tous,

J'aimerai faire une partie d'un script avec une vérification de l'âge entre la date réel et la date de naissance Advanced Identity.

Voici un début disponible ici

Par contre je ne connait pas la fonction permettant de vérifier la date réel ...

Merci par avance.
 
Yop ! J'ai beaucoup galérer je t'avoue, il manque beaucoup de choses notamment de prendre en compte la date actuelle est pas celle en jeu, prendre en compte les jours/mois et pas seulement l'année.

Dans ton life_server, ajoute une nouvelle fonction getRealTime dans ton config.cpp et le fichier : fn_getRealTime.sqf. Dans le fichier met :
Code:
/*
    Author: Maxence for THe-Programmer Forum
*/
currentDate = "extDB3" callExtension "9:LOCAL_TIME";
(owner _this) publicVariableClient "currentDate";
Dans ton CfgRemoteExec.hpp, autorise le remoteExec de cette fonction :
Code:
F(TON_fnc_getRealTime, SERVER)
Et remplace le fichier que tu avais envoyé par :
Code:
/*
    Author: Maxence for THe-Programmer Forum
*/
player remoteExecCall ["TON_fnc_getRealTime",2];
waitUntil {!isNil "currentDate"};
_currentDate = call compile currentDate;
currentDate = nil;
_currentDate = _currentDate select 1;

_currentYear = _currentDate select 0;
_currentMonth = _currentDate select 1;
_currentDay = _currentDate select 2;

_birthDateArray = identity_date_naissance;

_birthDay = _birthDateArray select 0;
_birthMonth = _birthDateArray select 1;
_birthYear = _birthDateArray select 2;

_mineur = false;
_yearsDiff = _currentYear - _birthYear;
if (_yearsDiff < 18) then {
    _mineur = true;
} else {
    if (_yearsDiff == 18) then {
        if (_currentMonth < _birthMonth) then {
            _mineur = true;
        } else {
            if (_currentMonth == _birthMonth) then {
                if (_currentDate < _birthDay) then {
                    _mineur = true;
                };
            };
        };
    };
};

if (_mineur) then {hint "Tu n'es pas majeur !";};

Dis-moi si ça fonctionne