/* Author: Brazilian Armed Forces File: fn_initRSC.sqf Objetivo: - Cria e gerencia o loop EachFrame que chama uma função de atualização BRAF_fnc_flirControls */ disableSerialization; params ["_display"]; // Diagnóstico: Verificar se a função está definida if (isNil "BRAF_fnc_flirControls") then { systemChat "[BRAF A-29] AVISO: BRAF_fnc_flirControls não foi carregada!"; }; uiNamespace setVariable ["BRAF_A29_UI_Display", _display]; if ((uiNamespace getVariable ["BRAF_A29_PFH_eachFrame", -1]) > -1) then { removeMissionEventHandler ["EachFrame", (uiNamespace getVariable "BRAF_A29_PFH_eachFrame")]; uiNamespace setVariable ["BRAF_A29_PFH_eachFrame", nil]; }; private _pfh = addMissionEventHandler ["EachFrame", { if (cameraView != "GUNNER") exitWith {}; private _display = uiNamespace getVariable ["BRAF_A29_UI_Display", displayNull]; if (isNull _display) exitWith { removeMissionEventHandler ["EachFrame", (uiNamespace getVariable "BRAF_A29_PFH_eachFrame")]; uiNamespace setVariable ["BRAF_A29_PFH_eachFrame", nil]; uiNamespace setVariable ["BRAF_A29_UI_Display", nil]; }; private _veh = vehicle player; if (isNull _veh) exitWith { removeMissionEventHandler ["EachFrame", (uiNamespace getVariable "BRAF_A29_PFH_eachFrame")]; uiNamespace setVariable ["BRAF_A29_PFH_eachFrame", nil]; uiNamespace setVariable ["BRAF_A29_UI_Display", nil]; }; [_display] call BRAF_fnc_flirControls; }]; uiNamespace setVariable ["BRAF_A29_PFH_eachFrame", _pfh]; //systemChat "[BRAF A-29] Sistema FLIR iniciado com sucesso";