51 lines
1.7 KiB
Plaintext
51 lines
1.7 KiB
Plaintext
/*
|
|
File: fn_createSuppModules.sqf
|
|
Author: KP Liberation Dev Team - https://github.com/KillahPotatoes
|
|
Date: 2020-04-21
|
|
Last Update: 2020-04-22
|
|
License: MIT License - http://www.opensource.org/licenses/MIT
|
|
|
|
Description:
|
|
Creates the A3 support framework modules.
|
|
|
|
Parameter(s):
|
|
NONE
|
|
|
|
Returns:
|
|
Function reached the end [BOOL]
|
|
*/
|
|
|
|
if (!isServer || KP_liberation_suppMod isEqualTo 0) exitWith {false};
|
|
|
|
["Creating modules", "SUPPORTMODULES"] call KPLIB_fnc_log;
|
|
|
|
// Create modules
|
|
private _grp = createGroup sideLogic;
|
|
KPLIB_suppMod_req = _grp createUnit ["SupportRequester", [0, 0, 0], [], 0, "NONE"];
|
|
KPLIB_suppMod_arty = _grp createUnit ["SupportProvider_Artillery", [0, 0, 0], [], 0, "NONE"];
|
|
|
|
// Set variables which are normally set via eden object attributes
|
|
{
|
|
[KPLIB_suppMod_req, _x, -1] call BIS_fnc_limitSupport;
|
|
} forEach ["Artillery", "CAS_Heli", "CAS_Bombing", "UAV", "Drop", "Transport"];
|
|
|
|
// Publish global variables to clients
|
|
publicVariable "KPLIB_suppMod_req";
|
|
publicVariable "KPLIB_suppMod_arty";
|
|
|
|
// Delay provider init until save is loaded, to catch synchronized units from loaded save
|
|
[] spawn {
|
|
waitUntil {!isNil "save_is_loaded" && {save_is_loaded}};
|
|
["Init provider on server", "SUPPORTMODULES"] call KPLIB_fnc_log;
|
|
[KPLIB_suppMod_req] call BIS_fnc_moduleSupportsInitRequester;
|
|
[KPLIB_suppMod_arty] call BIS_fnc_moduleSupportsInitProvider;
|
|
|
|
// Hide the three HQ entities created at zero pos. BIS scripts only hides them local for the creator
|
|
waitUntil {!isNil "BIS_SUPP_HQ_WEST" && !isNil "BIS_SUPP_HQ_EAST" && !isNil "BIS_SUPP_HQ_GUER"};
|
|
{
|
|
hideObjectGlobal _x;
|
|
} forEach [BIS_SUPP_HQ_WEST, BIS_SUPP_HQ_EAST, BIS_SUPP_HQ_GUER]
|
|
};
|
|
|
|
true
|