Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Вызывается холдэкшеном-----------------------------------------------------------------------------------------------------------------
- [
- dataTerminal,
- "Скачать информацию",
- "\a3\ui_f\data\IGUI\Cfg\HoldActions\holdAction_connect_ca.paa",
- "\a3\ui_f\data\IGUI\Cfg\HoldActions\holdAction_connect_ca.paa",
- "(_this distance _target) < 5 && alive _target",
- "true",
- {},
- {},
- {("layer_rsc_downloadingData" call BIS_fnc_rscLayer) cutRsc ["rsc_downloadingData", "PLAIN", 0.15, false];},
- {},
- [],
- 10,
- 1,
- false,
- false
- ] call bis_fnc_holdActionAdd;
- Сам код скачки-------------------------------------------------------------------------------------------------------------------------
- scriptName "fn_downloadData";
- #define __FILENAME "fn_downloadData.sqf"
- if (isDedicated || !hasInterface) exitWith {};
- disableSerialization;
- _object = dataTerminal;
- _getSignal =
- {
- _signal = switch (true) do
- {
- case (player distance2d getPosATL _object <= 5) :
- {
- "a3\Ui_f\data\IGUI\RscTitles\RscHvtPhase\JAC_A3_Signal_4_ca.paa"
- };
- case (player distance2d getPosATL _object > 5 && player distance2d getPosATL _object <= 10) :
- {
- "a3\Ui_f\data\IGUI\RscTitles\RscHvtPhase\JAC_A3_Signal_3_ca.paa"
- };
- case (player distance2d getPosATL _object > 10 && player distance2d getPosATL _object <= 15) :
- {
- "a3\Ui_f\data\IGUI\RscTitles\RscHvtPhase\JAC_A3_Signal_2_ca.paa"
- };
- case (player distance2d getPosATL _object > 15 && player distance2d getPosATL _object <= 20) :
- {
- "a3\Ui_f\data\IGUI\RscTitles\RscHvtPhase\JAC_A3_Signal_1_ca.paa"
- };
- case (player distance2d getPosATL _object > 20) :
- {
- ""
- };
- };
- _signal
- };
- _display = uiNamespace getVariable "disp_downloadingData";
- (_display displayCtrl 200) ctrlSetText "DOWNLOADING DATA...";
- _downloaded = 0;
- _increment = 0,15;
- _finish = 100;
- while {_downloaded < 100 && "layer_rsc_downloadingData" in allCutLayers} do
- {
- _downloaded = _downloaded + _increment;
- (_display displayCtrl 300) ctrlSetText format ["%1", {alive _x && side _x == east && _x distance2d getPosATL _object <= 20} count allUnits];
- (_display displayCtrl 400) progressSetPosition (_downloaded / 100);
- (_display displayCtrl 500) ctrlSetText format ["%1%2 / 100%2", _downloaded, "%"];
- (_display displayCtrl 700) ctrlSetText format ["%1", call _getSignal];
- if (player distance2d getPosATL _object > 20) exitWith
- {
- ("layer_rsc_downloadingData" call BIS_fnc_rscLayer) cutText ["", "PLAIN"];
- };
- sleep 1;
- // hintSilent "still running";
- };
- if (_downloaded isEqualTo _finish) then {[] execVM "cond1.sqf";};
- ("layer_rsc_downloadingData" call BIS_fnc_rscLayer) cutText ["", "PLAIN"];
- // hintSilent "not running";
- прилагающийся hppшник------------------------------------------------------------------------------------------------------------------
- class rsc_downloadingData
- {
- idd = 97531;
- movingEnable = 0;
- onLoad = "uiNamespace setVariable [""disp_downloadingData"", (_this select 0)]; [] spawn client_fnc_downloadData;";
- onUnLoad = "uiNamespace setVariable [""disp_downloadingData"", nil];";
- duration = 1e011;
- // fadeIn = 0;
- // fadeOut = 0;
- class controls
- {
- class download : RscControlsGroupNoScrollbars
- {
- idc = 100;
- x = "safeZoneX + 0 * (((safezoneW / safezoneH) min 1.2) / 40) + 0.1 * (((safezoneW / safezoneH) min 1.2) / 40)";
- y = "8.7 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))";
- w = "15.4 * (((safezoneW / safezoneH) min 1.2) / 40)";
- h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- class controls
- {
- class downloadContent : RscText
- {
- idc = 100;
- x = "0 * (((safezoneW / safezoneH) min 1.2) / 40)";
- y = "1.2 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- w = "15.4 * (((safezoneW / safezoneH) min 1.2) / 40)";
- h = "1.8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- colorBackground[] = {0.30000001, 0.30000001, 0.30000001, 0.69999999};
- };
- class downloadTitle : RscText
- {
- idc = 200;
- x = "0 * (((safezoneW / safezoneH) min 1.2) / 40)";
- y = "0 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- w = "8.8 * (((safezoneW / safezoneH) min 1.2) / 40)";
- h = "1.2 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- sizeEx = "1.15 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- text = "";
- shadow = 0;
- colorBackground[] = {0, 0, 0, 0.69999999};
- };
- class multiplier : RscText
- {
- idc = 300;
- x = "0 * (((safezoneW / safezoneH) min 1.2) / 40)";
- y = "1.2 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- w = "2.1 * (((safezoneW / safezoneH) min 1.2) / 40)";
- h = "1.8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- sizeEx = "1.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- style = 2;
- text = "";
- colorText[] = {1, 1, 1, 0.5};
- colorBackground[] = {0, 0, 0, 0.69999999};
- };
- class progressBar : RscProgress
- {
- idc = 400;
- x = "2.1 * (((safezoneW / safezoneH) min 1.2) / 40)";
- y = "1.2 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- w = "11.1339 * (((safezoneW / safezoneH) min 1.2) / 40)";
- h = "1.775 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- colorBackground[] = {0.80000001, 0.5, 0, 0.69999999};
- };
- class downloadSpeed : RscText
- {
- idc = 500;
- x = "3.4 * (((safezoneW / safezoneH) min 1.2) / 40)";
- y = "1.3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- w = "8.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
- h = "1.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- sizeEx = "1.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- style = 2;
- text = "";
- colorText[] = {1, 1, 1, 0.69999999};
- };
- class rangeBackground : RscText
- {
- idc = 600;
- x = "13.2 * (((safezoneW / safezoneH) min 1.2) / 40)";
- y = "1.2 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- w = "2.2 * (((safezoneW / safezoneH) min 1.2) / 40)";
- h = "1.8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- colorBackground[] = {0, 0, 0, 0.5};
- };
- class Range : RscPictureKeepAspect
- {
- idc = 700;
- x = "13.2 * (((safezoneW / safezoneH) min 1.2) / 40)";
- y = "1.2 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- w = "2.2 * (((safezoneW / safezoneH) min 1.2) / 40)";
- h = "1.8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
- text = "";
- };
- };
- };
- };
- };
- description.ext---------------------------------------------------------------------------------------------------------------------
- class RscTitles
- {
- #include "rsc_downloadingData.hpp"
- };
- cond.sqf-----------------------------------------------------------------------------------------------------------------------------
- sleep 5;
- ["Данные были похищенны.", EAST] call a3a_fnc_endMission;
- инит----------------------------------------------------------------------------------------------------------------------------------
- client_fnc_downloadData = compileFinal preprocessFileLineNumbers "fn_downloadData.sqf";
- waitUntil {!isNull player && player == player};
- waitUntil {!isNull (findDisplay 46)};
- downloaded = '0';
- publicVariable "downloaded";
- //("layer_rsc_downloadingData" call BIS_fnc_rscLayer) cutRsc ["rsc_downloadingData", "PLAIN", 0.01, false]; - пример вызова скачки
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement