initial files

This commit is contained in:
Samuele Lorefice
2025-05-24 16:17:33 +02:00
commit 9e023649ac
477 changed files with 118566 additions and 0 deletions

View File

@@ -0,0 +1,61 @@
waitUntil {!isNil "huron_typename"};
// Classnames of objects which should be added as editable for Zeus
private _vehicleClassnames = [toLower huron_typename];
{
_vehicleClassnames append _x;
} forEach [
KPLIB_crates,
KPLIB_b_light_classes,
KPLIB_b_heavy_classes,
KPLIB_b_air_classes,
KPLIB_b_static_classes,
KPLIB_b_support_classes
];
if (KP_liberation_enemies_zeus) then {_vehicleClassnames append KPLIB_o_allVeh_classes;};
private _valids = [];
private _toRemove = [];
private _toAdd = [];
while {true} do {
waitUntil {sleep 1; !(allCurators isEqualTo [])};
// Add units
_valids = allUnits select {
(alive _x) // Alive
&& {
(KP_liberation_enemies_zeus && {!(side (group _x) isEqualTo GRLIB_side_civilian)}) // Not civilian side, if enemy adding is enabled
|| {side (group _x) isEqualTo GRLIB_side_friendly} // Player side if enemy adding is disabled
}
&& {((str _x) find "BIS_SUPP_HQ_") isEqualTo -1} // Not a HQ entity from support module
};
// Add vehicles
_valids append (vehicles select {
(alive _x) // Alive
&& {
((toLower (typeOf _x)) in _vehicleClassnames) // In valid classnames
|| (_x getVariable ["KPLIB_captured", false]) // or captured
|| (_x getVariable ["KPLIB_seized", false]) // or seized
}
&& {isNull (attachedTo _x)} // Not attached to something
});
// Add playable units
_valids append switchableUnits;
_valids append playableUnits;
{
// Remove death or attached units
_toRemove = ((curatorEditableObjects _x) select {!(alive _x) || !(isNull (attachedTo _x))});
// Filter already added units of this curator
_toAdd = _valids - (curatorEditableObjects _x);
// Add and remove units
_x addCuratorEditableObjects [_toAdd, true];
_x removeCuratorEditableObjects [_toRemove, true];
} forEach allCurators;
sleep 9;
};