ProtoMehka a écrit le dernier message :
Ah oui pardon !
Au final, j'ai suivi les instructions que vous m'avez fourni. Côté serveur, j'ai modifié mon fichier fn_getReputation.sqf comme ceci :
J'ai ajouté la variable _target dans les paramètres où je renseigne 'player'. Avant de retourner la valeur (_value) pour mon script fn_addReputation.sqf, je remoteExec un nouveau script côté client avec _target (player).
J'ai donc créé un fichier côté client nommé fn_sendReputation.sqf pour récupérer la valeur et la stocker dans une playerVariable :
Je récupère ainsi une variable de type SCALAR que je vais pouvoir manipuler pour l'interface de suivi des réputation que je tâche de mettre en place.
S'il manque des précisions, fais-moi signe, je pourrai les apporter avant clôture
Au final, j'ai suivi les instructions que vous m'avez fourni. Côté serveur, j'ai modifié mon fichier fn_getReputation.sqf comme ceci :
C++:
/*
fnc_getReputation
_pid : getPlayerUID player;
_column : "rep_patriote"|"rep_travail"|"rep_nuisible"
return : int (0–100)
Exemple d'utilisation : [getPlayerUID player, "rep_nuisible", player] remoteExec ["RPY_fnc_getReputation",RSERV]
*/
params ["_pid","_column","_target"];
private _valid = ["rep_patriote","rep_travail","rep_nuisible"];
if !(_column in _valid) exitWith {};
private _query = format ["SELECT %1 FROM reputation WHERE pid='%2'", _column, _pid];
private _resArr = [_query, 2] call DB_fnc_asyncCall;
if ((count _resArr) == 0) exitWith {};
private _value = _resArr select 0;
[_column, _value] remoteExec ["SOCK_fnc_sendReputation", _target];
_value
J'ai ajouté la variable _target dans les paramètres où je renseigne 'player'. Avant de retourner la valeur (_value) pour mon script fn_addReputation.sqf, je remoteExec un nouveau script côté client avec _target (player).
J'ai donc créé un fichier côté client nommé fn_sendReputation.sqf pour récupérer la valeur et la stocker dans une playerVariable :
C++:
/*
fnc_sendReputation.sqf
RPY_fnc_sendReputation (client only)
_column : string
_value : int
*/
params ["_column","_value"];
/*
// Debug :
private _faction = "";
switch (_column) do {
case "rep_patriote" : {_faction = "Camarade Patriote"};
case "rep_travail" : {_faction = "Camarade Ouvrier"};
case "rep_nuisible" : {_faction = "Camarade Nuisible"};
};
*/
player setVariable [format ["rep_%1", _column], _value];
/*
// Debug :
hint format ["Réputation %1 = %2", _faction, _value];
*/
Je récupère ainsi une variable de type SCALAR que je vais pouvoir manipuler pour l'interface de suivi des réputation que je tâche de mettre en place.
S'il manque des précisions, fais-moi signe, je pourrai les apporter avant clôture
