Français Solved Erreur "remoteExec a disabled function"

  • Auteur de la discussion Auteur de la discussion babas59
  • Date de début Date de début

babas59

User
23/11/20
196
7
-1
950
Bonjour, je suis actuellement en train de mettre en place un outil admin qui permet d'afficher des marqueurs sur la carte des maisons acheté par les joueurs.
Je rencontre un souci lorsque je souhaite exécuter mon script, ce message dans mes logs m'indique cette erreur
Code:
tried to remoteExec a disabled function: 'ton_fnc_queryhouses;
Dans mon CfgRemoteExec.hpp j'ai bien mis F(TON_fnc_queryHouses,ANYONE) dans la class Function.

voici comment j'ai aménager mes fichier, fn_adminHouses.sqf dans la mission /core/admin/ et fn_queryHouses.sqf dans le life_server/Functions/Housing

merci pour votre aide.
 
Salut tu l'appels bien dans ton Functions.hpp ---> dans class Admin ?
Essaye de mettre des diag log dans ton fn_adminHouses et ton fn_queryHouses voir ou il bloque ?

Posté par @arlequin8286 via discord.
 
salut oui j'appel bien le fichier dans la class admin dans le function.hpp
le problème avec les diag_log c'est que je ne sais pas pourquoi ils ne s'affichent pas dans mes logs. Je sais que le script est bien appelé car j'ai mis un hint qui s'affiche quand je lance le script
 
voici mes scripts :

fn_adminHouses.sqf
Code:
#include "..\..\script_macros.hpp"
/*
    File: fn_adminHouses.sqf
    Description: Affiche les maisons des joueurs sur la carte avec le nom du propriétaire
*/

// Récupérer les données des maisons depuis la base de données
diag_log "fn_adminHouses.sqf has started.";

private _housesData =  remoteExec ["TON_fnc_queryHouses;"];

// Vérifier que les données sont bien reçues et afficher leur contenu dans les logs
if (isNil "_housesData" || {count _housesData == 0}) exitWith {
    hint "Aucune donnée sur les maisons reçue.";
    diag_log "DEBUG - Aucune donnée sur les maisons reçue."; // Log pour vérifier les données
};

// Traiter chaque maison
{
    // Récupérer les informations de chaque maison
    private _houseId = _x select 0; // ID de la maison
    private _pos = call compile format ["%1", _x select 1]; // Convertit la position (chaîne) en tableau
    private _posX = _pos select 0; // Coordonnée X
    private _posY = _pos select 1; // Coordonnée Y
    private _owner = _x select 2; // Nom du propriétaire

    // Créer un marqueur pour la maison sur la carte
     private _marker = createMarkerLocal [format ["houseMarker_%1", _houseId], [_posX, _posY]];
    _marker setMarkerType "hd_dot";
    _marker setMarkerText format ["Maison de %1", _owner];
    _marker setMarkerColor "ColorRed";
} forEach _housesData;

hint "Les maisons des joueurs sont affichées sur la carte.";

fn_queryHouses.sqf
Code:
/*
    File: fn_queryHouses.sqf
    Description: Requête SQL pour récupérer les maisons et les noms de propriétaires
*/

private _query = "SELECT houses.id, houses.pos AS position, players.name AS owner_name FROM houses JOIN players ON houses.pid = players.pid;";
private _result = [2, _query, false] call DB_fnc_asyncCall;

// Ajout de log pour vérifier le résultat brut
diag_log format ["DEBUG - Résultat de la requête maisons : %1", _result];

if (count _result > 0) then {
    [_result] remoteExecCall ["life_fnc_adminHouses", 2];
} else {
    diag_log "DEBUG - Aucun résultat de maisons trouvé.";
};
 
Bonsoir alors maintenant mon script s'exécute bien mais j'ai maintenant un souci avec le résultat de la requête qui me revoit uniquement true et non le tableau attendu voici mes logs
Code:
"DEBUG - Requête SQL : SELECT houses.id, houses.pos AS position, players.name AS owner_name FROM houses JOIN players ON houses.pid = players.pid;"
"DEBUG - Type de _result : BOOL"
"DEBUG - Résultat brut de _result : true"