Updates to plugin to build 5
This commit is contained in:
parent
c083f4d86b
commit
f937d9987f
@ -61,4 +61,4 @@ if (toUpper(_markerType) in ["ELLIPSE","RECTANGLE"]) then // not an Icon ....
|
|||||||
//diag_log format["_fnc_createMarkers: case of ICON: _markers = %1",_markers];
|
//diag_log format["_fnc_createMarkers: case of ICON: _markers = %1",_markers];
|
||||||
};
|
};
|
||||||
|
|
||||||
_markers
|
_markers
|
@ -99,6 +99,7 @@ while { !_validspot} do
|
|||||||
_count = _count - 1;
|
_count = _count - 1;
|
||||||
_slope = _slope + 0.02;
|
_slope = _slope + 0.02;
|
||||||
uiSleep 0.1; // to give the server a chance to handle other jobs for a moment
|
uiSleep 0.1; // to give the server a chance to handle other jobs for a moment
|
||||||
|
diag_log format["_findSafePosn: _count = %1 | _slope = %2 | _coords = %3",_count,_slope,_coords];
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
//uiSleep 1;
|
//uiSleep 1;
|
||||||
@ -175,6 +176,7 @@ while { !_validspot} do
|
|||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
//diag_log format["_fnc_findSafePosn: _coords = %1 | _flatCoords = %2 | _searchCenter = %3 | _angle %4 | _count = %5 | _validSpot = %6",_coords,_flatCoords,_searchCenter,_angle,_count,_validspot];
|
//diag_log format["_fnc_findSafePosn: _coords = %1 | _flatCoords = %2 | _searchCenter = %3 | _angle %4 | _count = %5 | _validSpot = %6",_coords,_flatCoords,_searchCenter,_angle,_count,_validspot];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -22,6 +22,10 @@ params["_center",
|
|||||||
["_sideArms",[]]
|
["_sideArms",[]]
|
||||||
];
|
];
|
||||||
|
|
||||||
|
{
|
||||||
|
diag_log format["_fnc_garrisonBuilding_relPosSystem: _this %1 = %2",_forEachIndex,_this select _forEachIndex];
|
||||||
|
}forEach _this;
|
||||||
|
|
||||||
if (_weaponList isEqualTo []) then {_weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout};
|
if (_weaponList isEqualTo []) then {_weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout};
|
||||||
if (_sideArms isEqualTo []) then {_sideArms = [_aiDifficultyLevel] call blck_fnc_selectAISidearms};
|
if (_sideArms isEqualTo []) then {_sideArms = [_aiDifficultyLevel] call blck_fnc_selectAISidearms};
|
||||||
if (_uniforms isEqualTo []) then {_uniforms = [_aiDifficultyLevel] call blck_fnc_selectAIUniforms};
|
if (_uniforms isEqualTo []) then {_uniforms = [_aiDifficultyLevel] call blck_fnc_selectAIUniforms};
|
||||||
|
Binary file not shown.
Binary file not shown.
@ -8,17 +8,16 @@ params["_u",["_category","House"]];
|
|||||||
private _pos = getPosASL _u;
|
private _pos = getPosASL _u;
|
||||||
private _building = objNull;
|
private _building = objNull;
|
||||||
private _surfacesAbove = lineInterSectsSurfaces [_pos, [_pos select 0, _pos select 1, (_pos select 2) + 100],_u,_u,true,10];
|
private _surfacesAbove = lineInterSectsSurfaces [_pos, [_pos select 0, _pos select 1, (_pos select 2) + 100],_u,_u,true,10];
|
||||||
//diag_log format["_surfacesAbove = %1",_surfacesAbove];
|
|
||||||
{
|
{
|
||||||
if ((_x select 2) isKindOf _category && !(_x isEqualTo _u)) exitWith {_building = (_x select 2)};
|
if ((_x select 2) isKindOf _category && !(_x isEqualTo _u)) exitWith {_building = (_x select 2)};
|
||||||
} forEach _surfacesAbove;
|
} forEach _surfacesAbove;
|
||||||
if (_building isEqualTo objNull) then
|
if (_building isEqualTo objNull) then
|
||||||
{
|
{
|
||||||
private _surfacesBelow = lineInterSectsSurfaces [_pos, [_pos select 0, _pos select 1, (_pos select 2) - 10],_u,_u,true,100];
|
private _surfacesBelow = lineInterSectsSurfaces [_pos, [_pos select 0, _pos select 1, (_pos select 2) - 10],_u,_u,true,100];
|
||||||
//diag_log format["_surfacesBelow = %1",_surfacesBelow];
|
|
||||||
{
|
{
|
||||||
if ((_x select 2) isKindOf _category && !(_x isEqualTo _u)) exitWith {_building = (_x select 2)};
|
if ((_x select 2) isKindOf _category && !(_x isEqualTo _u)) exitWith {_building = (_x select 2)};
|
||||||
} forEach _surfacesBelow;
|
} forEach _surfacesBelow;
|
||||||
};
|
};
|
||||||
//diag_log format["_fn_buildingContainer: _u = %1 | _building = %2",_u,_building];
|
|
||||||
_building
|
_building
|
@ -1,9 +1,12 @@
|
|||||||
|
|
||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
params["_building","_center"];
|
||||||
|
|
||||||
private _building = _this select 0;
|
|
||||||
private _CENTER = _this select 1;
|
|
||||||
private _pos = getPosATL _building;
|
private _pos = getPosATL _building;
|
||||||
private _garrisonedBuildings = missionNamespace getVariable["blck_garrisonedBuildings",[]];
|
private _garrisonedBuildings = missionNamespace getVariable["blck_garrisonedBuildings",[]];
|
||||||
private _count = 0;
|
private _count = 0;
|
||||||
@ -13,6 +16,7 @@ private _buildingGarrisonATL = [];
|
|||||||
private _configuredStatics = [];
|
private _configuredStatics = [];
|
||||||
private _configuredUnits = [];
|
private _configuredUnits = [];
|
||||||
private _statics = nearestObjects[getPosATL _building,["StaticWeapon"],sizeOf (typeOf _building)];
|
private _statics = nearestObjects[getPosATL _building,["StaticWeapon"],sizeOf (typeOf _building)];
|
||||||
|
private _units = nearestObjects[getPosATL _building,["Man"],sizeOf (typeOf _building)] select {(vehicle _x) isEqualTo _x};
|
||||||
private _lineBreak = toString [10];
|
private _lineBreak = toString [10];
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -20,11 +24,9 @@ private _lineBreak = toString [10];
|
|||||||
{
|
{
|
||||||
private _isInside = [_x] call blck3DEN_fnc_isInside;
|
private _isInside = [_x] call blck3DEN_fnc_isInside;
|
||||||
private _container = [_x] call blck3DEN_fnc_buildingContainer;
|
private _container = [_x] call blck3DEN_fnc_buildingContainer;
|
||||||
//diag_log format["evaluating building %1 static %2 isInside = %3 container = %4",_building,_x,_isInside,_container];
|
|
||||||
if (_isInside && (_container isEqualTo _building)) then
|
if (_isInside && (_container isEqualTo _building)) then
|
||||||
{
|
{
|
||||||
_configuredStatics pushBackUnique _x;
|
_configuredStatics pushBackUnique _x;
|
||||||
//diag_log format["Building %1 | buildingPos %2 | _pos %3",typeOf _x, getPosATL _x,_pos];
|
|
||||||
_staticsText pushBack [format['%1',typeOf _x],(getPosATL _x) vectorDiff (_pos),getDir _x];
|
_staticsText pushBack [format['%1',typeOf _x],(getPosATL _x) vectorDiff (_pos),getDir _x];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -32,7 +34,6 @@ private _lineBreak = toString [10];
|
|||||||
_staticsText joinString _lineBreak;
|
_staticsText joinString _lineBreak;
|
||||||
|
|
||||||
// Since this is run from the editor we do not have to worry about units running off from their original locations
|
// Since this is run from the editor we do not have to worry about units running off from their original locations
|
||||||
private _units = nearestObjects[getPosATL _building,["Man"],sizeOf (typeOf _building)] select {(vehicle _x) isEqualTo _x};
|
|
||||||
{
|
{
|
||||||
if !(_x in _configuredUnits) then
|
if !(_x in _configuredUnits) then
|
||||||
{
|
{
|
||||||
@ -47,14 +48,12 @@ private _units = nearestObjects[getPosATL _building,["Man"],sizeOf (typeOf _buil
|
|||||||
} forEach _units;
|
} forEach _units;
|
||||||
_unitsText joinString _lineBreak;
|
_unitsText joinString _lineBreak;
|
||||||
|
|
||||||
//diag_log format["_staticsText for building %1 = %2",_building,_staticsText];
|
|
||||||
//diag_log format["_unitsText for building %1 = %2",_building,_unitsText];
|
|
||||||
if !((_staticsText isEqualTo []) && (_unitsText isEqualTo [])) then
|
if !((_staticsText isEqualTo []) && (_unitsText isEqualTo [])) then
|
||||||
{
|
{
|
||||||
_buildingGarrisonATL = [
|
_buildingGarrisonATL = [
|
||||||
format["%1",
|
format["%1",
|
||||||
typeOf _building],
|
typeOf _building],
|
||||||
(getPosATL _building) vectorDiff _pos,
|
(getPosATL _building) vectorDiff _center,
|
||||||
getDir _building,
|
getDir _building,
|
||||||
true,
|
true,
|
||||||
true,
|
true,
|
||||||
@ -62,5 +61,12 @@ if !((_staticsText isEqualTo []) && (_unitsText isEqualTo [])) then
|
|||||||
_unitsText
|
_unitsText
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
//diag_log format["_buildingGarrisonATL = %1",_buildingGarrisonATL];
|
|
||||||
[_buildingGarrisonATL,_configuredStatics,_configuredUnits]
|
private "_return";
|
||||||
|
if (_buildingGarrisonATL isEqualTo []) then
|
||||||
|
{
|
||||||
|
_return = [];
|
||||||
|
} else {
|
||||||
|
_return = [_buildingGarrisonATL,_configuredStatics,_configuredUnits];
|
||||||
|
};
|
||||||
|
_return
|
||||||
|
@ -0,0 +1,19 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
params["_object"];
|
||||||
|
|
||||||
|
private _marker = create3DENEntity ["object","Sign_Arrow_Large_Yellow_F",getPos _object];
|
||||||
|
private _markerPos = getPos _object;
|
||||||
|
private _bbr = boundingBoxReal _object;
|
||||||
|
_p1 = _bbr select 0;
|
||||||
|
_p2 = _bbr select 1;
|
||||||
|
_height = abs ((_p2 select 2) - (_p1 select 2));
|
||||||
|
_marker setPosATL [_markerPos select 0, _markerPos select 1, (_markerPos select 2) + _height];
|
||||||
|
_object setVariable ["marker",_marker];
|
||||||
|
|
||||||
|
true
|
@ -0,0 +1,20 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
params["_object"];
|
||||||
|
|
||||||
|
private _marker = create3DENEntity ["object","Sign_Arrow_Large_Green_F",getPos _object];
|
||||||
|
private _markerPos = getPos _object;
|
||||||
|
private _bbr = boundingBoxReal _object;
|
||||||
|
_p1 = _bbr select 0;
|
||||||
|
_p2 = _bbr select 1;
|
||||||
|
_height = abs ((_p2 select 2) - (_p1 select 2));
|
||||||
|
_marker setPosATL [_markerPos select 0, _markerPos select 1, (_markerPos select 2) + _height];
|
||||||
|
_object setVariable ["marker",_marker];
|
||||||
|
|
||||||
|
true
|
||||||
|
|
@ -1,4 +1,9 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
params["_message"];
|
params["_message"];
|
||||||
|
|
||||||
// As found in fn_3DENExportTerrainBuilder.sqf
|
// As found in fn_3DENExportTerrainBuilder.sqf
|
||||||
|
@ -0,0 +1,30 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
params["_state"];
|
||||||
|
all3DENEntities params ["_objects"];
|
||||||
|
_objects = _objects select {_x getVariable["garrisoned",false]};
|
||||||
|
|
||||||
|
missionNameSpace setVariable["blck_displayGarrisonMarkerOn",_state];
|
||||||
|
{
|
||||||
|
if (_state) then // if the request was to show the markers then ....
|
||||||
|
{
|
||||||
|
private _marker = _x getVariable["marker",""];
|
||||||
|
diag_log format["_x = %1 | _marker = %2",_x,_marker];
|
||||||
|
if (_marker isEqualto "") then
|
||||||
|
{
|
||||||
|
[_x] call blck3DEN_fnc_createGarrisonMarker;
|
||||||
|
[_x] call blck3DEN_fnc_setEventHandlers;
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
blck_displayGarrisonMarkerOn = false;
|
||||||
|
if !(_x getVariable["marker",""] isEqualTo "") then
|
||||||
|
{
|
||||||
|
[_x] call blck3DEN_fnc_removeMarker;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
} forEach _objects;
|
@ -0,0 +1,27 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
params["_state"];
|
||||||
|
all3DENEntities params ["_objects"];
|
||||||
|
_objects = _objects select {_x getVariable ["lootVehicle",false]};
|
||||||
|
|
||||||
|
missionNamespace setVariable["blck_displayLootMarkerOn",_state];
|
||||||
|
{
|
||||||
|
if (_state) then // if the request was to show the markers then ....
|
||||||
|
{
|
||||||
|
if (_x getVariable["marker",""] isEqualto "") then
|
||||||
|
{
|
||||||
|
[_x] call blck3DEN_fnc_createLootMarker;
|
||||||
|
[_x] call blck3DEN_fnc_setEventHandlers;
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
if !(_x getVariable["marker",""] isEqualTo "") then
|
||||||
|
{
|
||||||
|
[_x] call blck3DEN_fnc_removeMarker;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
} forEach _objects;
|
@ -1,4 +1,9 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
params["_end"];
|
params["_end"];
|
||||||
missionNamespace setVariable["blck_endMessage",_end];
|
missionNamespace setVariable["blck_endMessage",_end];
|
||||||
|
@ -1,19 +1,29 @@
|
|||||||
|
/*
|
||||||
private _object = get3DENSelected "object" select {((typeOf _x) isKindOf "House") && [_x] call BIS_fnc_isBuildingEnterable};
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
private _objects = get3DENSelected "object";
|
||||||
private "_message";
|
private "_message";
|
||||||
switch (count _objecct) do
|
diag_log format["getGarrisonInfo: _object = %1",format["%1",_object]];
|
||||||
|
if (_objects isEqualTo []) then
|
||||||
{
|
{
|
||||||
case 0: {_message = "No Enterable Buildings selected"};
|
_message = "No Buildings Selected";
|
||||||
case 1: {
|
} else {
|
||||||
if (_object getVariable["garrisoned",false]) then
|
if (count _objects == 1) then
|
||||||
{
|
{
|
||||||
_message = format["Building %1 IS Garrisoned",typeOf _object];
|
if ((_objects select 0) getVariable["garrisoned",false]) then
|
||||||
|
{
|
||||||
|
_message = format["Building %1 IS Garrisoned",typeOf (_objects select 0)];
|
||||||
} else {
|
} else {
|
||||||
_message = format["Building %1 is NOT Garrisoned",typeOf _object];
|
_message = format["Building %1 is NOT Garrisoned",typeOf (_objects select 0)];
|
||||||
};
|
};
|
||||||
};
|
} else {
|
||||||
default {_message = "Select a single building then try again"};
|
_message = format["Select a single building then try again"];
|
||||||
};
|
};
|
||||||
[_message,"Status"] call BIS_fnc_3DENShowMessage;
|
};
|
||||||
systemChat _message;
|
systemChat _message;
|
||||||
diag_log _message;
|
diag_log _message;
|
||||||
|
[_message,"Status"] call BIS_fnc_3DENShowMessage;
|
||||||
|
|
||||||
|
@ -1,22 +1,31 @@
|
|||||||
|
|
||||||
private _objects = get3DENSelected "object" select {(typeOf _x) isKindOf "Car"};
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
private _objects = get3DENSelected "object" select {(typeOf _x) isKindOf "Car" || (typeOf _x) isKindOf "Ship" || (typeOf _x) isKindOf "ThingX"};
|
||||||
private "_message";
|
private "_message";
|
||||||
|
|
||||||
switch (count _objects) do
|
if (_objects isEqualTo []) then
|
||||||
{
|
{
|
||||||
case 0: {_message = "Select a vehicle and try again"};
|
_message = "No Cars/Ships/ThingX Selected";
|
||||||
case 1: {
|
} else {
|
||||||
|
if (count _objects == 1) then
|
||||||
|
{
|
||||||
if ((_objects select 0) getVariable["lootvehicle",false]) then
|
if ((_objects select 0) getVariable["lootvehicle",false]) then
|
||||||
{
|
{
|
||||||
_message = format["Vehicle %1 IS a loot vehicle",typeOf (_objects select 0)];
|
_message = format["Vehicle %1 IS a Loot Vehicle",typeOf (_objects select 0)];
|
||||||
} else {
|
} else {
|
||||||
_message = format["Vehicle %1 is NOT a loot vehicle",typeOf (_objects select 0)];
|
_message = format["Vehicle %1 is NOT a Loot Vehicle",typeOf (_objects select 0)];
|
||||||
};
|
};
|
||||||
|
} else {
|
||||||
|
_message = format["% Vehicles Selected. Select a single vehicle then try again",count _objects];
|
||||||
};
|
};
|
||||||
default {_message = "Select a single vehicle and try again"};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
[_message,"Status"] call BIS_fnc_3DENShowMessage;
|
|
||||||
|
|
||||||
systemChat _message;
|
systemChat _message;
|
||||||
diag_log _message;
|
diag_log _message;
|
||||||
|
[_message,"Status"] call BIS_fnc_3DENShowMessage;
|
||||||
|
|
||||||
|
|
||||||
|
@ -13,5 +13,7 @@ missionNamespace setVariable["blck_endState",getText(configFile >> "CfgBlck3DEN"
|
|||||||
missionNamespace setVariable["blck_startMessage","TODO: Add a start message"];
|
missionNamespace setVariable["blck_startMessage","TODO: Add a start message"];
|
||||||
missionNamespace setVariable["blck_endMessage","TODO: Add an end message"];
|
missionNamespace setVariable["blck_endMessage","TODO: Add an end message"];
|
||||||
missionNamespace setVariable["blck_missionLocations","random"];
|
missionNamespace setVariable["blck_missionLocations","random"];
|
||||||
|
missionNameSpace setVariable["blck_displayGarrisonMarkerOn",false];
|
||||||
|
missionNamespace setVariable["blck_displayLootMarkerOn",false];
|
||||||
|
|
||||||
diag_log format["Mission Attributes Initialized for blckeagls at time %1",diag_tickTime];
|
diag_log format["Mission Attributes Initialized for blckeagls at time %1",diag_tickTime];
|
@ -8,5 +8,4 @@
|
|||||||
|
|
||||||
private _u = _this select 0;
|
private _u = _this select 0;
|
||||||
private _isInfantry = if ((_u isKindOf "Man") && (vehicle _u) isEqualTo _u) then {true} else {false};
|
private _isInfantry = if ((_u isKindOf "Man") && (vehicle _u) isEqualTo _u) then {true} else {false};
|
||||||
//diag_log format["_fn_isInfantry: _isInfantry = %1",_isInfantry];
|
|
||||||
_isInfantry
|
_isInfantry
|
13
@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_onDrag.sqf
Normal file
13
@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_onDrag.sqf
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
params["_object"];
|
||||||
|
if !(_object getVariable["marker",""] isEqualTo "") then
|
||||||
|
{
|
||||||
|
private _marker = _object getVariable["marker",""];
|
||||||
|
private _markerPos = getPosATL _object;
|
||||||
|
_marker setPosATL[_markerPos select 0, _markerPos select 1, (_markerPos select 2) + sizeOf _object];
|
||||||
|
};
|
28
@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_onRegistered.sqf
Normal file
28
@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_onRegistered.sqf
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
params["_object"];
|
||||||
|
|
||||||
|
switch (true) do
|
||||||
|
{
|
||||||
|
case ((typeOf _object) isKindOf "ThingX" && blck_displayLootMarkerOn): {
|
||||||
|
if !(_object getVariable["lootVehicle",""] isEqualTo "") then
|
||||||
|
{
|
||||||
|
[_object] call blck3DEN_fnc_createLootMarker;
|
||||||
|
[_object] call blck3DEN_fnc_setEventHandlers;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
case ((typeOf _object) isKindOf "House" && blck_displayGarrisonMarkerOn): {
|
||||||
|
if !(_object getVariable["garrisoned",""] isEqualTo "") then
|
||||||
|
{
|
||||||
|
[_object] call blck3DEN_fnc_createGarrisonMarker;
|
||||||
|
[_object] call blck3DEN_fnc_setEventHandlers;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
14
@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_onUnregister.sqf
Normal file
14
@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_onUnregister.sqf
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
params["_object"];
|
||||||
|
if !(_object getvariable["marker",""] isEqualTo "") then
|
||||||
|
{
|
||||||
|
[_object] call blck3DEN_fnc_removeMarker;
|
||||||
|
_object setVariable ["marker",nil];
|
||||||
|
//_object setVariable ["lootVehicle",nil];
|
||||||
|
//_object setVariable ["garrisoned",nil];
|
||||||
|
};
|
18
@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_removeMarker.sqf
Normal file
18
@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_removeMarker.sqf
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
params["_object"];
|
||||||
|
|
||||||
|
private _marker = _object getVariable["marker",""];
|
||||||
|
if !(_marker isEqualTo "") then
|
||||||
|
{
|
||||||
|
private _id = get3DENEntityID _marker;
|
||||||
|
delete3DENEntities [_id];
|
||||||
|
_object setVariable["marker",nil];
|
||||||
|
};
|
||||||
|
|
||||||
|
true
|
@ -0,0 +1,14 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
params["_object"];
|
||||||
|
|
||||||
|
_object removeAllEventHandlers "UnregisteredFromWorld3DEN";
|
||||||
|
_object removeAllEventHandlers "RegisteredToWorld3DEN";
|
||||||
|
_object removeAllEventHandlers "Dragged3DEN";
|
||||||
|
_object addEventHandler ["Dragged3DEN",{_this call blck3DEN_fnc_onDrag;}];
|
||||||
|
_object addEventHandler ["UnregisteredFromWorld3DEN",{_this call blck3DEN_fnc_onUnregister;}];
|
||||||
|
_object addEventHandler ["RegisteredToWorld3DEN", {_this call blck3DEN_fnc_onRegistered;}];
|
@ -1,26 +1,47 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
params["_state"];
|
params["_state"];
|
||||||
|
private _markersStateON = missionNamespace getVariable["blck_displayGarrisonMarkerOn",false];
|
||||||
|
[false] call blck3DEN_fnc_displayGarrisonMarkers;
|
||||||
private _objects = get3DENSelected "object" select {(typeOf _x) isKindOf "House"};
|
private _objects = get3DENSelected "object" select {(typeOf _x) isKindOf "House"};
|
||||||
|
private "_message";
|
||||||
if (_objects isEqualTo []) exitWith
|
if (_objects isEqualTo []) exitWith
|
||||||
{
|
{
|
||||||
_m = "Select one or more buildings to configure";
|
_message = "Select one or more buildings to configure";
|
||||||
systemChat _m;
|
systemChat _message;
|
||||||
|
diag_log _message;
|
||||||
|
[_message,"Status"] call BIS_fnc_3DENShowMessage;
|
||||||
};
|
};
|
||||||
|
|
||||||
{
|
{
|
||||||
if ([_x] call BIS_fnc_isBuildingEnterable) then
|
if ([_x] call BIS_fnc_isBuildingEnterable) then
|
||||||
{
|
{
|
||||||
_x setVariable["garrisoned",_state];
|
_x setVariable["garrisoned",_state];
|
||||||
_m = format["building of type %1 had garrison state set to %2",typeOf _x,_state];
|
_message = format["building of type %1 had garrison state set to %2",typeOf _x,_state];
|
||||||
systemChat _m;
|
systemChat _message;
|
||||||
diag_log _m;
|
diag_log _message;
|
||||||
|
if (blck_displayGarrisonMarkerOn) then
|
||||||
|
{
|
||||||
|
[_x] call blck3DEN_fnc_createGarrisonedMarker;
|
||||||
|
[_x] call blck3DEN_fnc_setEventHandlers;
|
||||||
|
};
|
||||||
} else {
|
} else {
|
||||||
_m = format["Object type %1 ignored: only enterable buildings can be garrisoned",typeOf _x];
|
_message = format["Object type %1 ignored: only enterable buildings can be garrisoned",typeOf _x];
|
||||||
systemChat _x;
|
systemChat _message;
|
||||||
diag_log _x;
|
diag_log _message;
|
||||||
|
[_message,"Status"] call BIS_fnc_3DENShowMessage;
|
||||||
};
|
};
|
||||||
|
|
||||||
} forEach _objects;
|
} forEach _objects;
|
||||||
_m = format["Garrison State of %1 buildings updated to %2",count _objects,_state];
|
_message = format["Garrison State of %1 buildings updated to %2",count _objects,_state];
|
||||||
systemChat _m;
|
systemChat _message;
|
||||||
|
if (_markersStateON) then
|
||||||
|
{
|
||||||
|
[true] call blck3DEN_fnc_displayGarrisonMarkers;
|
||||||
|
};
|
||||||
|
[_message,"Status"] call BIS_fnc_3DENShowMessage;
|
@ -1,22 +1,49 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
sets a flag stored through setVariable for each selected object that meets the filter criteria
|
||||||
|
only objects of type "Car"or "ThingX" are allowed.
|
||||||
|
*/
|
||||||
|
|
||||||
params["_state"];
|
params["_state"];
|
||||||
private _objects = get3DENSelected "object" select {(typeOf _x) isKindOf "Car"};
|
private _markerStateON = missionNameSpace getVariable["blck_displayLootMarkerOn",false];
|
||||||
|
[false] call blck3DEN_fnc_displayLootMarkers;
|
||||||
|
private "_message";
|
||||||
|
private _objects = get3DENSelected "object" select {(typeOf _x) isKindOf "Car" || (typeOf _x) isKindOf "Ship"}; //
|
||||||
if (_objects isEqualTo []) exitWith
|
if (_objects isEqualTo []) exitWith
|
||||||
{
|
{
|
||||||
_m = "Select one or more vehicles to configure";
|
_message = "Select one or more vehicles or items of type ThingX to configure";
|
||||||
systemChat _m;
|
systemChat _message;
|
||||||
};
|
};
|
||||||
{
|
{
|
||||||
if ((typeOf _x) isKindOf "Car") then
|
if ((typeOf _x) isKindOf "Car" || (typeOf _x) isKindOf "Ship") then
|
||||||
{
|
{
|
||||||
_x setVariable["lootvehicle",_state];
|
_x setVariable["lootvehicle",_state];
|
||||||
_m = format["Vehicle type %1 set to Loot Vehilce = %1",typeOf _x,_state];
|
if (blck_displayLootMarkerOn && _state) then
|
||||||
systemChat _m;
|
{
|
||||||
diag_log _m;
|
[_x] call blck3DEN_fnc_createLootMarker;
|
||||||
|
[_x] call blck3DEN_fnc_setEventHandlers;
|
||||||
|
} else {
|
||||||
|
if !(_state) then
|
||||||
|
{
|
||||||
|
[_x] call blck3DEN_fnc_removeLootMarker;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
_message = format["Vehicle type %1 set to Loot Vehicle = %1",typeOf _x,_state];
|
||||||
|
systemChat _message;
|
||||||
|
diag_log _message;
|
||||||
} else {
|
} else {
|
||||||
_m = format["Object with type %1 ignored:: only objects of type Car can be used as loot vehicles",typeOf _x];
|
_message = format["Object with type %1 ignored:: only objects of type Car can be used as loot vehicles",typeOf _x];
|
||||||
diag_log _m;
|
diag_log _message;
|
||||||
systemChat _m;
|
systemChat _message;
|
||||||
};
|
};
|
||||||
} forEach _objects;
|
} forEach _objects;
|
||||||
_m = format["Loot Vehicle State of %1 vehicles updated to %2",count _objects,_state];
|
|
||||||
|
if (_markerStateON) then
|
||||||
|
{
|
||||||
|
[true] call blck3DEN_fnc_displayLootMarkers;
|
||||||
|
};
|
||||||
|
_message = format["Loot Vehicle State of %1 objects updated to %2",count _objects,_state];
|
||||||
systemChat _m;
|
systemChat _m;
|
@ -1,4 +1,9 @@
|
|||||||
|
/*
|
||||||
|
blckeagls 3EDEN Editor Plugin
|
||||||
|
by Ghostrider-GRG-
|
||||||
|
Copyright 2020
|
||||||
|
|
||||||
|
*/
|
||||||
private _objects = get3DENSelected "object";
|
private _objects = get3DENSelected "object";
|
||||||
private _markers select {(typeOf _x) = _markerType};
|
private _markers select {(typeOf _x) = _markerType};
|
||||||
{
|
{
|
||||||
|
@ -1,51 +1,148 @@
|
|||||||
|
|
||||||
class CfgVehicles
|
|
||||||
{
|
|
||||||
class Object
|
|
||||||
{
|
|
||||||
class AttributeCategories
|
|
||||||
{
|
|
||||||
class LandVehicle;
|
|
||||||
class blckLandVehicle: LandVehicle;
|
|
||||||
{
|
|
||||||
class Attributes
|
|
||||||
{
|
|
||||||
class blckLootVehicle
|
|
||||||
{
|
|
||||||
// https://community.bistudio.com/wiki/Eden_Editor:_Configuring_Attributes#Scenario
|
|
||||||
displayName = "Loot Vehicle";
|
|
||||||
toolTip = "Enable/Disable Use as Loot Vehicle";
|
|
||||||
property = "blckLootVehicle";
|
|
||||||
control = "Edit";
|
|
||||||
expression = "_this setVariable['%s',_value];";
|
|
||||||
defaultValue = 'false';
|
|
||||||
unique = 0;
|
|
||||||
validate = "BOOL";
|
|
||||||
typeName = "BOOL";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
class Static;
|
/*
|
||||||
class blckHouse: Static
|
Dynamic Mission Generated
|
||||||
{
|
Using 3DEN Plugin for blckeagls
|
||||||
class Attributes
|
dynamicMission.sqf generated:: blckeagls 3DEN Plugin Version 0 : Build 5 : Build Date 09/19/20
|
||||||
{
|
By Ghostrider-GRG-
|
||||||
class blckGarison
|
*/
|
||||||
{
|
|
||||||
// https://community.bistudio.com/wiki/Eden_Editor:_Configuring_Attributes#Scenario
|
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||||
displayName = "Garison Building";
|
#include "\q\addons\custom_server\Missions\privateVars.sqf";
|
||||||
toolTip = "Enable/Disable ?Garisoned Building";
|
|
||||||
property = "blckGarison";
|
_defaultMissionLocations = [];
|
||||||
control = "Edit";
|
_markerType = ["ELLIPSE",[250,250],"SOLID"];
|
||||||
expression = "_this setVariable['%s',_value];";
|
_markerColor = "COLORRED";
|
||||||
defaultValue = 'false';
|
_startMsg = "TODO: Change approiately";
|
||||||
unique = 0;
|
_endMsg = "TODO: Change Appropriately";
|
||||||
validate = "BOOL";
|
_markerMissionName = "TODO: Update appropriately";
|
||||||
typeName = "BOOL";
|
_crateLoot = blck_BoxLoot_Blue;
|
||||||
};
|
_lootCounts = blck_lootCountsBlue;
|
||||||
};
|
|
||||||
};
|
_garrisonedBuildings_BuildingPosnSystem = [
|
||||||
};
|
|
||||||
};
|
];
|
||||||
};
|
|
||||||
|
_garrisonedBuilding_ATLsystem = [
|
||||||
|
["Land_Cargo_Patrol_V3_F",[0,0,0],45,true,true,[["O_GMG_01_high_F",[0.533447,-1.45142,4.34404],229.902]],[]],
|
||||||
|
["Land_Cargo_Patrol_V3_F",[0,0,0],90,true,true,[["O_GMG_01_high_F",[-0.669434,-1.43628,4.34404],272.772]],[]],
|
||||||
|
["Land_Cargo_HQ_V3_F",[0,0,0],269.183,true,true,[["O_Mortar_01_F",[4.13428,-1.79297,3.12652],0]],[[[-1.19116,2.72095,3.12796],0]]],
|
||||||
|
["Land_Cargo_Patrol_V3_F",[0,0,0],179.749,true,true,[["O_GMG_01_high_F",[-1.22046,0.542969,4.34404],0]],[]]
|
||||||
|
];
|
||||||
|
|
||||||
|
_missionLandscape = [
|
||||||
|
["Land_HBarrier_Big_F",[-1.98413,-1.92993,-4.76837e-007],45,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[3.98779,-7.51294,-4.76837e-007],45,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[-7.52954,12.9387,-4.76837e-007],270,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[-7.65234,21.4033,-4.76837e-007],90,true,true],
|
||||||
|
["Land_HBarrier_5_F",[24.321,15.1624,-4.76837e-007],270,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[25.2722,-3.87012,-4.76837e-007],328.551,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[20.9385,18.7275,-4.76837e-007],180,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[18.2209,-8.25903,-4.76837e-007],330,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[10.5823,-10.2063,-4.76837e-007],0,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[34.0476,6.36035,-4.76837e-007],299.181,true,true],
|
||||||
|
["Land_Cargo_House_V3_F",[11.125,-4.1167,-4.76837e-007],180,true,true],
|
||||||
|
["Land_Cargo_House_V3_F",[33.6809,29.3313,-4.76837e-007],90.6682,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[17.3999,23.9451,-4.76837e-007],90,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[3.64941,26.885,-4.76837e-007],0,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[29.6377,37.4236,-4.76837e-007],225,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[12.1257,27.1333,-4.76837e-007],1.36604e-005,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[36.0908,34.8279,-4.76837e-007],0,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[22.8857,39.9236,-4.76837e-007],180,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[37.969,13.8748,-4.76837e-007],299.181,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[39.5908,21.3279,-4.76837e-007],270,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[39.4658,29.7029,-4.76837e-007],90,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[-4.69336,26.6685,-4.76837e-007],0,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[14.4446,39.6458,-4.76837e-007],180,true,true],
|
||||||
|
["Land_HBarrier_5_F",[16.6345,47.3489,-4.76837e-007],180.149,true,true],
|
||||||
|
["Land_HBarrier_5_F",[11.1445,47.3962,-4.76837e-007],180.149,true,true],
|
||||||
|
["Land_HBarrier_5_F",[18.7251,43.8938,-4.76837e-007],269.822,true,true],
|
||||||
|
["Land_HBarrier_5_F",[7.49487,45.4861,-4.76837e-007],124.084,true,true],
|
||||||
|
["Land_Cargo_House_V3_F",[33.5195,22.5332,-4.76837e-007],90.6682,true,true],
|
||||||
|
["Land_HBarrier_Big_F",[-6.20093,4.80859,-4.76837e-007],75.8618,true,true],
|
||||||
|
["RoadCone_L_F",[9.69141,6.51465,-4.76837e-007],0,true,true],
|
||||||
|
["Land_Cargo40_military_green_F",[-3.2334,35.5225,-4.76837e-007],45.5098,true,true],
|
||||||
|
["Land_Cargo20_grey_F",[-7.22656,32.293,-4.76837e-007],44.3033,true,true],
|
||||||
|
["Land_Cargo20_grey_F",[-13.3616,30.4897,-4.76837e-007],0,true,true],
|
||||||
|
["Land_Cargo20_grey_F",[26.2278,-12.2869,-4.76837e-007],6.20739,true,true],
|
||||||
|
["Land_Cargo20_grey_F",[39.1899,4.03271,-4.76837e-007],272.936,true,true],
|
||||||
|
["Land_Canteen_F",[36.6631,46.6692,-4.76837e-007],0,true,true],
|
||||||
|
["Land_PaperBox_01_open_boxes_F",[30.7021,49.6111,-4.76837e-007],0,true,true]
|
||||||
|
];
|
||||||
|
|
||||||
|
_simpleObjects = [
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
_missionLootVehicles = [
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
_missionPatrolVehicles = [
|
||||||
|
["O_LSV_02_armed_F",[24.1306,-41.168,0],87.1292,75,75],
|
||||||
|
["O_LSV_02_armed_F",[12.8894,74.8223,-4.76837e-007],87.7224,75,75]
|
||||||
|
];
|
||||||
|
|
||||||
|
_submarinePatrolParameters = [
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
_airPatrols = [
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
_missionEmplacedWeapons = [
|
||||||
|
["O_HMG_01_high_F",[9.55957,44.0073,-4.76837e-007],0],
|
||||||
|
["O_HMG_01_high_F",[21.7991,15.363,-4.76837e-007],0]
|
||||||
|
];
|
||||||
|
|
||||||
|
_missionGroups = [
|
||||||
|
[[16.9512,1.75757,0.00143862],3,6,"Blue",30,45],
|
||||||
|
[[8.01904,18.9385,3.12796],3,6,"Blue",30,45],
|
||||||
|
[[23.6782,30.5142,0.00143862],3,6,"Blue",30,45],
|
||||||
|
[[30.0935,9.90186,0.00143862],3,6,"Blue",30,45],
|
||||||
|
[[-0.340576,10.3516,0.00143862],3,6,"Blue",30,45]
|
||||||
|
];
|
||||||
|
|
||||||
|
_scubaGroupParameters = [
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
_missionLootBoxes = [
|
||||||
|
["Land_Pallet_MilBoxes_F",[-3.88013,11.6785,-4.76837e-007],_crateLoot,_lootCounts,0]
|
||||||
|
];
|
||||||
|
|
||||||
|
/*
|
||||||
|
Use the parameters below to customize your mission - see the template or blck_configs.sqf for details about each them
|
||||||
|
*/
|
||||||
|
_chanceHeliPatrol = blck_chanceHeliPatrolBlue;
|
||||||
|
_noChoppers = blck_noPatrolHelisBlue;
|
||||||
|
_missionHelis = blck_patrolHelisBlue;
|
||||||
|
_chancePara = blck_chanceParaBlue;
|
||||||
|
_noPara = blck_noParaBlue;
|
||||||
|
_paraTriggerDistance = 400;
|
||||||
|
_paraSkill = 'Blue';
|
||||||
|
_chanceLoot = 0.0;
|
||||||
|
_paraLoot = blck_BoxLoot_Blue;
|
||||||
|
_paraLootCounts = blck_lootCountsBlue;
|
||||||
|
_missionLandscapeMode = "precise";
|
||||||
|
_uniforms = blck_SkinList;
|
||||||
|
_headgear = blck_headgear;
|
||||||
|
_vests = blck_vests;
|
||||||
|
_backpacks = blck_backpacks;
|
||||||
|
_sideArms = blck_Pistols;
|
||||||
|
_spawnCratesTiming = "atMissionSpawnGround";
|
||||||
|
_loadCratesTiming = "atMissionSpawn";
|
||||||
|
_endCondition = "allKilledOrPlayerNear";
|
||||||
|
_minNoAI = blck_MinAI_Blue;
|
||||||
|
_maxNoAI = blck_MaxAI_Blue;
|
||||||
|
_noAIGroups = blck_AIGrps_Blue;
|
||||||
|
_noVehiclePatrols = blck_SpawnVeh_Blue;
|
||||||
|
_noEmplacedWeapons = blck_SpawnEmplaced_Blue;
|
||||||
|
_minNoAI = blck_MinAI_Blue;
|
||||||
|
_maxNoAI = blck_MaxAI_Blue;
|
||||||
|
_noAIGroups = blck_AIGrps_Blue;
|
||||||
|
_noVehiclePatrols = blck_SpawnVeh_Blue;
|
||||||
|
_noEmplacedWeapons = blck_SpawnEmplaced_Blue;
|
||||||
|
|
||||||
|
#include "\q\addons\custom_server\Compiles\Missions\GMS_fnc_missionSpawner.sqf";
|
@ -23,26 +23,6 @@ lootVehicleVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "
|
|||||||
buildingPosGarrisonVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "buildingPosGarrisonVariableName");
|
buildingPosGarrisonVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "buildingPosGarrisonVariableName");
|
||||||
buildingATLGarrisionVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "buildingATLGarrisionVariableName");
|
buildingATLGarrisionVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "buildingATLGarrisionVariableName");
|
||||||
|
|
||||||
/*
|
|
||||||
{
|
|
||||||
diag_log format["param %1 = %2",_forEachIndex,_x];
|
|
||||||
} forEach [
|
|
||||||
objectAtMissionCenter,
|
|
||||||
blck_minAI,
|
|
||||||
blck_maxAI,
|
|
||||||
minPatrolRadius,
|
|
||||||
maxPatrolRadius,
|
|
||||||
maxVehiclePatrolRadius,
|
|
||||||
aircraftPatrolRadius,
|
|
||||||
oddsOfGarison,
|
|
||||||
maxGarrisonStatics,
|
|
||||||
typesGarrisonStatics,
|
|
||||||
blck_MissionDifficulty,
|
|
||||||
lootVehicleVariableName,
|
|
||||||
buildingPosGarrisonVariableName,
|
|
||||||
buildingATLGarrisionVariableName
|
|
||||||
];*/
|
|
||||||
|
|
||||||
CENTER = [0,0,0];
|
CENTER = [0,0,0];
|
||||||
|
|
||||||
diag_log format["Dynamic Export called at %1",diag_tickTime];
|
diag_log format["Dynamic Export called at %1",diag_tickTime];
|
||||||
@ -115,11 +95,11 @@ if !(_markers isEqualTo []) then
|
|||||||
{
|
{
|
||||||
_m1 = _markers select 0;
|
_m1 = _markers select 0;
|
||||||
_markerType = (_m1 get3DENAttribute "itemClass") select 0;
|
_markerType = (_m1 get3DENAttribute "itemClass") select 0;
|
||||||
_markerShape = (_m1 get3DENAttribute "markerType") select 0;
|
//_markerShape = (_m1 get3DENAttribute "markerType") select 0;
|
||||||
_markerColor = (_m1 get3DENAttribute "baseColor") select 0;
|
_markerColor = (_m1 get3DENAttribute "baseColor") select 0;
|
||||||
_markerText = (_m1 get3DENAttribute "text") select 0;
|
_markerText = (_m1 get3DENAttribute "text") select 0;
|
||||||
if !(_markerText isEqualTo "") then {blck_dynamicmarkerMissionName = _markerText};
|
if !(_markerText isEqualTo "") then {blck_dynamicmarkerMissionName = _markerText};
|
||||||
_markerBrush = (_m1 get3DENAttribute "markerBrush") select 0;
|
_markerBrush = (_m1 get3DENAttribute "brush") select 0;
|
||||||
_markerPos = (_m1 get3DENAttribute "position") select 0;
|
_markerPos = (_m1 get3DENAttribute "position") select 0;
|
||||||
_markerSize = (_m1 get3DENAttribute "size2") select 0;
|
_markerSize = (_m1 get3DENAttribute "size2") select 0;
|
||||||
_markerText = (_m1 get3DENAttribute "text") select 0;
|
_markerText = (_m1 get3DENAttribute "text") select 0;
|
||||||
@ -136,11 +116,11 @@ if !(_markers isEqualTo []) then
|
|||||||
diag_log format["<WARNING> More than one marker was found; only the first marker was processed"];
|
diag_log format["<WARNING> More than one marker was found; only the first marker was processed"];
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_markerType = "mil_square";
|
_markerType = "ELLIPSE";
|
||||||
_markerShape = "null";
|
//_markerShape = "ELLIPSE";
|
||||||
_markerSize = "[0,0]";
|
_markerSize = "[250,250]";
|
||||||
_markerColor = "COLORRED";
|
_markerColor = "COLORRED";
|
||||||
_markerBrush = "null";
|
_markerBrush = "SOLID";
|
||||||
if !(_objects isEqualTo []) then
|
if !(_objects isEqualTo []) then
|
||||||
{
|
{
|
||||||
CENTER = getPosATL (_objects select 0);
|
CENTER = getPosATL (_objects select 0);
|
||||||
@ -149,7 +129,6 @@ if !(_markers isEqualTo []) then
|
|||||||
};
|
};
|
||||||
diag_log format["<WARNING> No marker was found, using default values and position for mission center position"];
|
diag_log format["<WARNING> No marker was found, using default values and position for mission center position"];
|
||||||
};
|
};
|
||||||
diag_log format["_m1 = %1 | _type = %2 | _shape = %3 | _size = %4 | _color = %5 | _brush = %6 | _text = %7",_m1,_markerType,_markerShape,_markerSize,_markerColor,_markerBrush,_markerText];
|
|
||||||
|
|
||||||
if (CENTER isEqualTo [0,0,0]) then
|
if (CENTER isEqualTo [0,0,0]) then
|
||||||
{
|
{
|
||||||
@ -163,49 +142,56 @@ private _garisonedUnits = [];
|
|||||||
|
|
||||||
private _landscape = _objects select{
|
private _landscape = _objects select{
|
||||||
!(isSimpleObject _x) &&
|
!(isSimpleObject _x) &&
|
||||||
((typeOf _x) isKindOf "Static")
|
((typeOf _x) isKindOf "Static" || ( (typeOf _x) isKindOf "ThingX")) &&
|
||||||
|
!((typeOf _x) isKindOf "ReammoBox_F") &&
|
||||||
|
!(_x getVariable["isLootContainer",false]) &&
|
||||||
|
!((typeOf _x) isKindOf "Helper_Base_F")
|
||||||
};
|
};
|
||||||
private _garisonedPos = [];
|
|
||||||
private _helpers = _objects select {((typeOf _x) isEqualTo garisonMarkerObject)};
|
|
||||||
diag_log format["garisonMarkerObject = %1 | _helpers = %2",garisonMarkerObject,_helpers];
|
|
||||||
{
|
|
||||||
if ([_x] call blck3DEN_fnc_isInside) then
|
|
||||||
{
|
|
||||||
_building = [_x] call blck3DEN_fnc_buildingContainer;
|
|
||||||
_garisonedBuildings pushbackunique _building;
|
|
||||||
// data structure ["building Classname",[/*building pos*/],/*building dir*/,/*odds of garrison*/, /*Max Statics*/,/*types statics*/,/*max units*/],
|
|
||||||
// 1 2 3 4 5 6 7 8 9
|
|
||||||
_garisonedPos pushBack format[' ["%1",%2,%3,%4,%5,%6,%7,%8,%9]',typeOf _building,(getPosATL _building) vectorDiff CENTER,getDir _building, 'true','true',oddsOfGarrison,maxGarrisonStatics,typesGarrisonStatics,maxGarrisonUnits];
|
|
||||||
};
|
|
||||||
} forEach _helpers;
|
|
||||||
//diag_log format["CENTER = %1 | _landscape = %2",CENTER,_landscape];
|
|
||||||
private _garrisonATL = [];
|
|
||||||
{
|
|
||||||
_atl = [_x,CENTER] call blck3DEN_fnc_configureGarrisonATL;
|
|
||||||
|
|
||||||
// format["_fnc_exportDynamic: _building = %1 | _atl = %2",_x,_atl];
|
private _garisonedPos = [];
|
||||||
//diag_log format["_fnc_exportDynamic: typeName _atl = %1",typeName _atl];
|
|
||||||
if (typeName _atl isEqualTo "STRING") then {diag_log format["_fnc_exportDynamic: length _atl = %1 | _atl = '' is %2",count _atl, _atl isEqualTo ""]};
|
diag_log format["_exportDynamic (174): count _landscape = %1",count _landscape];
|
||||||
if !(_atl isEqualTo []) then {
|
for "_i" from 1 to (count _landscape) do
|
||||||
if !((_atl select 0) isEqualTo []) then
|
{
|
||||||
{
|
if (isNull _building) exitWith {};
|
||||||
_garrisonATL pushBack (_atl select 0);
|
private _building = _landscape deleteAt 0;
|
||||||
_garisonedBuildings pushBack _x;
|
diag_log format ["_garrisonedPos: evaluating _building %1 | ;garrisoned = %2'",_building,_building getVariable["garrisoned",false]];
|
||||||
_garisonedStatics append (_atl select 1);
|
if (_building getVariable["garrisoned",false]) then
|
||||||
_garisonedUnits append (_atl select 2)
|
{
|
||||||
//diag_log format["_fnc_exportDynamic: garrisoned building added: %1",_atl];
|
_garisonedPos pushBack format[' ["%1",%2,%3,%4,%5,%6,%7,%8,%9]',typeOf _building,(getPosATL _building) vectorDiff CENTER,getDir _building, 'true','true',oddsOfGarrison,maxGarrisonStatics,typesGarrisonStatics,maxGarrisonUnits];
|
||||||
};
|
} else {
|
||||||
|
_landscape pushBack _building;
|
||||||
};
|
};
|
||||||
} forEach _landscape;
|
};
|
||||||
|
|
||||||
|
private _garrisonATL = [];
|
||||||
|
for "_i" from 1 to (count _landscape) do
|
||||||
|
{
|
||||||
|
if (isNull _building) exitWith {};
|
||||||
|
private _building = _landscape deleteAt 0;
|
||||||
|
_atl = [_building,CENTER] call blck3DEN_fnc_configureGarrisonATL;
|
||||||
|
if (_atl isEqualTo []) then {
|
||||||
|
_landscape pushBack _building;
|
||||||
|
} else {
|
||||||
|
_garrisonATL pushBack (format[" %1",_atl select 0]);
|
||||||
|
_garisonedBuildings pushBack _building;
|
||||||
|
_garisonedStatics append (_atl select 1);
|
||||||
|
_garisonedUnits append (_atl select 2);
|
||||||
|
};
|
||||||
|
};
|
||||||
diag_log format["_garrisonATL = %1",_garrisonATL];
|
diag_log format["_garrisonATL = %1",_garrisonATL];
|
||||||
|
|
||||||
private _missionLandscape = [];
|
private _missionLandscape = [];
|
||||||
|
for "_i" from 1 to (count _landscape) do
|
||||||
{
|
{
|
||||||
if !(_x in _garisonedBuildings) then
|
private _building = _landscape deleteAt 0;
|
||||||
|
if (isNull _building) exitWith {};
|
||||||
|
diag_log format["typeOf _x = %1 | _x isMarker = %2",typeOf _building,_building getVariable["marker",false]];
|
||||||
|
if !(_building getVariable["marker",false]) then
|
||||||
{
|
{
|
||||||
_missionLandscape pushBack format[' ["%1",%2,%3,%4,%5]',typeOf _x,(getPosATL _x) vectorDiff CENTER,getDir _x, 'true','true'];
|
_missionLandscape pushBack format[' ["%1",%2,%3,%4,%5]',typeOf _building,(getPosATL _building) vectorDiff CENTER,getDir _building, 'true','true'];
|
||||||
};
|
};
|
||||||
}forEach _landscape;
|
};
|
||||||
|
|
||||||
private _simpleObjects = _objects select {isSimpleObject _x};
|
private _simpleObjects = _objects select {isSimpleObject _x};
|
||||||
diag_log format["_simpleObjects = %1",_simpleObjects];
|
diag_log format["_simpleObjects = %1",_simpleObjects];
|
||||||
@ -218,7 +204,7 @@ private _missionLootVehicles = [];
|
|||||||
private _lootVehicles = _objects select {
|
private _lootVehicles = _objects select {
|
||||||
((typeOf _x) isKindOf "AllVehicles") &&
|
((typeOf _x) isKindOf "AllVehicles") &&
|
||||||
!((typeOf _x) isKindOf "Man") &&
|
!((typeOf _x) isKindOf "Man") &&
|
||||||
(_x get3DENAttribute "name" isEqualTo lootVehicleVariableName)
|
(_x getVariable["lootvehicle",false])
|
||||||
};
|
};
|
||||||
diag_log format["_lootVehicles = %1",_lootVehicles];
|
diag_log format["_lootVehicles = %1",_lootVehicles];
|
||||||
{
|
{
|
||||||
@ -229,7 +215,7 @@ _missionPatrolVehicles = [];
|
|||||||
private _patrolVehicles = _objects select {
|
private _patrolVehicles = _objects select {
|
||||||
(((typeOf _x) isKindOf "Car") || ((typeOf _x) isKindOf "Tank") || ((typeOf _x) isKindOf "Ship")) &&
|
(((typeOf _x) isKindOf "Car") || ((typeOf _x) isKindOf "Tank") || ((typeOf _x) isKindOf "Ship")) &&
|
||||||
!((typeOf _x) isKindOf "SDV_01_base_F") &&
|
!((typeOf _x) isKindOf "SDV_01_base_F") &&
|
||||||
!(_x in _lootVehicles)
|
!(_x getVariable["lootvehicle",false])
|
||||||
};
|
};
|
||||||
diag_log format["_patrolVehicles = %1",_patrolVehicles];
|
diag_log format["_patrolVehicles = %1",_patrolVehicles];
|
||||||
{
|
{
|
||||||
@ -289,7 +275,7 @@ private _scubaGroups = [];
|
|||||||
} forEach _scuba;
|
} forEach _scuba;
|
||||||
|
|
||||||
private _lootContainers = [];
|
private _lootContainers = [];
|
||||||
private _ammoBoxes = _objects select {
|
private _ammoBoxes = _objects select { // "ReammoBox_F"
|
||||||
(((typeOf _x) isKindOf "ReammoBox") || ((typeOf _x) isKindOf "ReammoBox_F"))
|
(((typeOf _x) isKindOf "ReammoBox") || ((typeOf _x) isKindOf "ReammoBox_F"))
|
||||||
};
|
};
|
||||||
diag_log format["_ammoBoxes = %1",_ammoboxes];
|
diag_log format["_ammoBoxes = %1",_ammoboxes];
|
||||||
|
@ -89,11 +89,11 @@ if !(_markers isEqualTo []) then
|
|||||||
{
|
{
|
||||||
_m1 = _markers select 0;
|
_m1 = _markers select 0;
|
||||||
_markerType = (_m1 get3DENAttribute "itemClass") select 0;
|
_markerType = (_m1 get3DENAttribute "itemClass") select 0;
|
||||||
_markerShape = (_m1 get3DENAttribute "markerType") select 0;
|
//_markerShape = (_m1 get3DENAttribute "markerType") select 0;
|
||||||
_markerColor = (_m1 get3DENAttribute "baseColor") select 0;
|
_markerColor = (_m1 get3DENAttribute "baseColor") select 0;
|
||||||
_markerText = (_m1 get3DENAttribute "text") select 0;
|
_markerText = (_m1 get3DENAttribute "text") select 0;
|
||||||
if !(_markerText isEqualTo "") then {blck_dynamicmarkerMissionName = _markerText};
|
if !(_markerText isEqualTo "") then {blck_dynamicmarkerMissionName = _markerText};
|
||||||
_markerBrush = (_m1 get3DENAttribute "markerBrush") select 0;
|
_markerBrush = (_m1 get3DENAttribute "brush") select 0;
|
||||||
_markerPos = (_m1 get3DENAttribute "position") select 0;
|
_markerPos = (_m1 get3DENAttribute "position") select 0;
|
||||||
_markerSize = (_m1 get3DENAttribute "size2") select 0;
|
_markerSize = (_m1 get3DENAttribute "size2") select 0;
|
||||||
_markerText = (_m1 get3DENAttribute "text") select 0;
|
_markerText = (_m1 get3DENAttribute "text") select 0;
|
||||||
@ -103,7 +103,7 @@ if !(_markers isEqualTo []) then
|
|||||||
*/
|
*/
|
||||||
} else {
|
} else {
|
||||||
_markerType = "mil_square";
|
_markerType = "mil_square";
|
||||||
_markerShape = "";
|
//_markerShape = "";
|
||||||
_markerSize = [0,0];
|
_markerSize = [0,0];
|
||||||
_markerColor = "COLORRED";
|
_markerColor = "COLORRED";
|
||||||
_markerBrush = "";
|
_markerBrush = "";
|
||||||
|
@ -52,8 +52,8 @@ class CfgBlck3DEN
|
|||||||
class CfgVersion
|
class CfgVersion
|
||||||
{
|
{
|
||||||
version = 1.0;
|
version = 1.0;
|
||||||
build = 3;
|
build = 5;
|
||||||
date = "08/23/20";
|
date = "09/19/20";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -44,27 +44,32 @@ class CfgFunctions
|
|||||||
class Core
|
class Core
|
||||||
{
|
{
|
||||||
file = "3EDEN_plugin\Core";
|
file = "3EDEN_plugin\Core";
|
||||||
class help {};
|
|
||||||
class about {};
|
class about {};
|
||||||
|
class buildingContainer {};
|
||||||
|
class configureGarrisonATL {};
|
||||||
|
class createLootMarker {};
|
||||||
|
class createGarrisonMarker {};
|
||||||
|
class display {};
|
||||||
|
class displayGarrisonMarkers {};
|
||||||
|
class displayLootMarkers {};
|
||||||
class getGarrisonInfo {};
|
class getGarrisonInfo {};
|
||||||
class getLootVehicleInfo {};
|
class getLootVehicleInfo {};
|
||||||
class getMissionGarrisonInfo {};
|
class help {};
|
||||||
class getMissionLootVehicleInfo {};
|
|
||||||
class initializeAttributes {};
|
class initializeAttributes {};
|
||||||
class isInfantry {};
|
class isInfantry {};
|
||||||
class isInside {};
|
class isInside {};
|
||||||
class buildingContainer {};
|
class loadCratesTiming {};
|
||||||
class display {};
|
class onDrag {};
|
||||||
|
class onRegistered {};
|
||||||
|
class onUnregister {};
|
||||||
|
class removeMarker {};
|
||||||
class setDifficulty {};
|
class setDifficulty {};
|
||||||
class setCompletionMode {}
|
class setCompletionMode {}
|
||||||
class setGarrison {};
|
class setGarrison {};
|
||||||
class setLootVehicle {};
|
class setLootVehicle {};
|
||||||
class setSpawnLocations {};
|
class setSpawnLocations {};
|
||||||
class spawnCratesTiming {};
|
class spawnCratesTiming {};
|
||||||
class loadCratesTiming {};
|
|
||||||
class endMessage {};
|
|
||||||
class startMessage {};
|
|
||||||
class configureGarrisonATL {};
|
|
||||||
class versionInfo {};
|
class versionInfo {};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -85,7 +90,7 @@ class cfg3DEN
|
|||||||
{
|
{
|
||||||
OnMissionLoad = "call blck3DEN_fnc_initializeAttributes";
|
OnMissionLoad = "call blck3DEN_fnc_initializeAttributes";
|
||||||
OnMissionNew = "call blck3DEN_fnc_initializeAttributes";
|
OnMissionNew = "call blck3DEN_fnc_initializeAttributes";
|
||||||
onHistoryChange = "call blck3DEN_fnc_updateObjects";
|
//onHistoryChange = "call blck3DEN_fnc_updateObjects";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -110,24 +115,6 @@ class cfg3DEN
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
class blck_garison: Combo
|
|
||||||
{
|
|
||||||
class Value
|
|
||||||
{
|
|
||||||
text = "Set Garison State";
|
|
||||||
items[] = {"No_Garison","Has_garison"};
|
|
||||||
};
|
|
||||||
class no_garison
|
|
||||||
{
|
|
||||||
text = "No Garison";
|
|
||||||
//action = "_this setVariable['garison',0];";
|
|
||||||
};
|
|
||||||
class has_garison
|
|
||||||
{
|
|
||||||
text = "Has Garison";
|
|
||||||
//action = "_this setVariable['garison',1];";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -148,24 +135,7 @@ class cfg3DEN
|
|||||||
|
|
||||||
class CfgVehicles
|
class CfgVehicles
|
||||||
{
|
{
|
||||||
class House;
|
|
||||||
|
|
||||||
class blck_House: House
|
|
||||||
{
|
|
||||||
class Attributes
|
|
||||||
{
|
|
||||||
class blck_garisoned
|
|
||||||
{
|
|
||||||
displayName = "Garrison";
|
|
||||||
toolTip = "Define Garrisoned Buildings";
|
|
||||||
control = "blck_garison";
|
|
||||||
|
|
||||||
expression = "_this setVariable ['garrisoned',_value];";
|
|
||||||
defaultValue = false;
|
|
||||||
unique = 0;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class ctrlMenuStrip;
|
class ctrlMenuStrip;
|
||||||
@ -175,67 +145,6 @@ class display3DEN
|
|||||||
{
|
{
|
||||||
class Controls
|
class Controls
|
||||||
{
|
{
|
||||||
/*
|
|
||||||
class ContextMenu: ctrlMenu
|
|
||||||
{
|
|
||||||
class Items
|
|
||||||
{
|
|
||||||
items[] += {
|
|
||||||
"blck_markLootVehicle",
|
|
||||||
"blck_markGarisonBuildingPos"
|
|
||||||
};
|
|
||||||
class blck_markLootVehicle
|
|
||||||
{
|
|
||||||
text = "Designate Loot Vehicles";
|
|
||||||
value = false;
|
|
||||||
//action = "systemChat 'value toggled'";
|
|
||||||
conditionShow = "selectedObject";
|
|
||||||
items[] = {
|
|
||||||
"blck_clearLootVehicle",
|
|
||||||
"blck_designateLootVehicle"
|
|
||||||
};
|
|
||||||
};
|
|
||||||
class blck_clearLootVehicle
|
|
||||||
{
|
|
||||||
text = "Clear Loot Vehicle Settings";
|
|
||||||
value = false;
|
|
||||||
action = "[false] call blck3DEN_fnc_setLootVehicleStatus";
|
|
||||||
};
|
|
||||||
class blck_deisgnateLootVehicle
|
|
||||||
{
|
|
||||||
text = "Desinate Loot Vehicle";
|
|
||||||
value = true;
|
|
||||||
action = "[true] call blck3DEN_fnc_setLootVehicleStatus";
|
|
||||||
};
|
|
||||||
|
|
||||||
class blck_markGarisonBuildingPos
|
|
||||||
{
|
|
||||||
text = "Designate Garisoned Buildings";
|
|
||||||
value = false;
|
|
||||||
conditionShow = "selectedObject";
|
|
||||||
items[] = {
|
|
||||||
"blck_clearGarisonSettings",
|
|
||||||
"blck_designateGarisonedBuilding"
|
|
||||||
};
|
|
||||||
};
|
|
||||||
class blck_clearGarisonSettings
|
|
||||||
{
|
|
||||||
text = "Clear Garison Settings";
|
|
||||||
value = false;
|
|
||||||
conditionShow = "selectedObject";
|
|
||||||
action = "[false] call blck3DEN_fnc_setGarison";
|
|
||||||
};
|
|
||||||
class blck_designateGarisonedBuilding
|
|
||||||
{
|
|
||||||
text = "Set as Garisoned Building";
|
|
||||||
value = true;
|
|
||||||
conditionShow = "SelectedObject";
|
|
||||||
action = "[true] call blck3DEN_fnc_setGarison";
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
class MenuStrip: ctrlMenuStrip
|
class MenuStrip: ctrlMenuStrip
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -258,12 +167,12 @@ class display3DEN
|
|||||||
"blckMissionLocation",
|
"blckMissionLocation",
|
||||||
"blckSeparator",
|
"blckSeparator",
|
||||||
"blck_setGarrison",
|
"blck_setGarrison",
|
||||||
"blck_getGarrisonInfo",
|
//"blck_getGarrisonInfo",
|
||||||
"blck_getMissionGarrisonInfo",
|
//"blck_getMissionGarrisonInfo",
|
||||||
"blckSeparator",
|
"blckSeparator",
|
||||||
"blck_markLootVehicle",
|
"blck_markLootVehicle",
|
||||||
"blck_getLootVehicleInfo",
|
//"blck_getLootVehicleInfo",
|
||||||
"blck_getMissionLootVehicleInfo",
|
//"blck_getMissionLootVehicleInfo",
|
||||||
"blckSeparator",
|
"blckSeparator",
|
||||||
"blckSaveStaticMission",
|
"blckSaveStaticMission",
|
||||||
"blckSaveDynamicMission",
|
"blckSaveDynamicMission",
|
||||||
@ -420,35 +329,6 @@ class display3DEN
|
|||||||
action = "['atMissionCompletion'] call blck3DEN_fnc_loadCratesTiming";
|
action = "['atMissionCompletion'] call blck3DEN_fnc_loadCratesTiming";
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
|
||||||
/////////////////////////////
|
|
||||||
class blckMissionMessages
|
|
||||||
{
|
|
||||||
text = "Set timing for loading crates";
|
|
||||||
items[] = {
|
|
||||||
"blckStartMessage",
|
|
||||||
"blckEndMessage"
|
|
||||||
};
|
|
||||||
};
|
|
||||||
// ["Title","Default","ctrlControlsGroupNoScrollbars","ctrlControlsGroup","ctrlDefault"]
|
|
||||||
class Edit;
|
|
||||||
class blckEdit: Edit
|
|
||||||
{
|
|
||||||
control = "Edit";
|
|
||||||
value = "";
|
|
||||||
};
|
|
||||||
class blckStartMessage: blckEdit
|
|
||||||
{
|
|
||||||
text = "Misstion Start Message";
|
|
||||||
action = "[_value] call blck3DEN_startMessage";
|
|
||||||
};
|
|
||||||
class blckEndMessage: blckEdit
|
|
||||||
{
|
|
||||||
text = "Mission End Message";
|
|
||||||
action = "[_value] call blck3DEN_endMessage";
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
|
|
||||||
class blckMissionLocation
|
class blckMissionLocation
|
||||||
{
|
{
|
||||||
text = "Toggle Random or Fixed Location";
|
text = "Toggle Random or Fixed Location";
|
||||||
@ -470,16 +350,26 @@ class display3DEN
|
|||||||
action = "['fixed'] call blck3DEN_fnc_setSpawnLocations";
|
action = "['fixed'] call blck3DEN_fnc_setSpawnLocations";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////
|
||||||
|
|
||||||
class blck_setGarrison
|
class blck_setGarrison
|
||||||
{
|
{
|
||||||
text = "Set as Garrisoned Building";
|
text = "Garrisoned Building Settings";
|
||||||
toolTip = "Set garrison status of selected buildings";
|
toolTip = "Set garrison status of selected buildings";
|
||||||
items[] = {
|
items[] = {
|
||||||
"blck_isGarrisoned",
|
"blck_setGarrisonedState",
|
||||||
"blck_clearGarrisoned",
|
"blck_getGarrisonInfo",
|
||||||
"blck_getGarrisonInfo"
|
"blck_garrisonMarkers"
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
class blck_setGarrisonedState
|
||||||
|
{
|
||||||
|
items[] = {
|
||||||
|
"blck_isGarrisoned",
|
||||||
|
"blck_clearGarrisoned"
|
||||||
|
};
|
||||||
|
text = "Garrison Settings";
|
||||||
|
};
|
||||||
class blck_isGarrisoned
|
class blck_isGarrisoned
|
||||||
{
|
{
|
||||||
text = "Garrison Building";
|
text = "Garrison Building";
|
||||||
@ -498,46 +388,79 @@ class display3DEN
|
|||||||
{
|
{
|
||||||
text = "Get Building Garrisoned Setting";
|
text = "Get Building Garrisoned Setting";
|
||||||
toolTip = "Get the selected buildings garrisoned flag";
|
toolTip = "Get the selected buildings garrisoned flag";
|
||||||
value = 0;
|
|
||||||
action = "call blck3DEN_fnc_getGarrisonInfo";
|
action = "call blck3DEN_fnc_getGarrisonInfo";
|
||||||
};
|
};
|
||||||
class getMissionGarrisonInfo
|
class blck_garrisonMarkers
|
||||||
{
|
{
|
||||||
text = "Get garrison flag for selected buildings";
|
items[] = {
|
||||||
toolTip = "The garrisoned flag state will be displayed for selected bulidings";
|
"blck_GarrisonMarkersOn",
|
||||||
value = 0;
|
"blck_GarrisonMarkersOff"
|
||||||
action = "call blck3DEN_fnc_getMissionGarrisonInfo";
|
};
|
||||||
|
text = "Toggle markers over garrisoned buildings";
|
||||||
};
|
};
|
||||||
|
class blck_GarrisonMarkersOn
|
||||||
|
{
|
||||||
|
text = "Display Markers over Garrisoned Buildings";
|
||||||
|
action = "[true] call blck3DEN_fnc_displayGarrisonMarkers";
|
||||||
|
};
|
||||||
|
class blck_GarrisonMarkersOff
|
||||||
|
{
|
||||||
|
text = "Hide Markers over Garrisoned Buildings";
|
||||||
|
action = "[false] call blck3DEN_fnc_displayGarrisonMarkers";
|
||||||
|
};
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
class blck_markLootVehicle
|
class blck_markLootVehicle
|
||||||
{
|
{
|
||||||
text = "Designate Loot Vehicles";
|
text = "Loot Vehicle Settings";
|
||||||
value = false;
|
|
||||||
//action = "systemChat 'value toggled'";
|
|
||||||
conditionShow = "selectedObject";
|
|
||||||
items[] = {
|
items[] = {
|
||||||
"blck_clearLootVehicle",
|
"blck_designateLootVehicleState",
|
||||||
"blck_designateLootVehicle"
|
"blck_getLootVehicleInfo",
|
||||||
|
"blck_displayLootMarkers"
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
class blck_clearLootVehicle
|
class blck_designateLootVehicleState
|
||||||
|
{
|
||||||
|
items[] = {
|
||||||
|
"blck_setAsLootVehicle",
|
||||||
|
"blck_clearLootVehicleFlag"
|
||||||
|
};
|
||||||
|
text = "Loot Vehicle Settings";
|
||||||
|
};
|
||||||
|
class blck_clearLootVehicleFlag
|
||||||
{
|
{
|
||||||
text = "Clear Loot Vehicle Settings";
|
text = "Clear Loot Vehicle Settings";
|
||||||
value = false;
|
|
||||||
action = "[false] call blck3DEN_fnc_setLootVehicle";
|
action = "[false] call blck3DEN_fnc_setLootVehicle";
|
||||||
};
|
};
|
||||||
class blck_designateLootVehicle
|
class blck_setAsLootVehicle
|
||||||
{
|
{
|
||||||
text = "Desinate Loot Vehicle";
|
text = "Desinate Loot Vehicle";
|
||||||
value = true;
|
|
||||||
action = "[true] call blck3DEN_fnc_setLootVehicle";
|
action = "[true] call blck3DEN_fnc_setLootVehicle";
|
||||||
};
|
};
|
||||||
class blck_getLootVehicleInfo
|
class blck_getLootVehicleInfo
|
||||||
{
|
{
|
||||||
text = "Get setting for selected vehicle";
|
text = "Get setting for selected vehicle";
|
||||||
value = 0;
|
|
||||||
action = "call blck3DEN_fnc_getLootVehicleInfo";
|
action = "call blck3DEN_fnc_getLootVehicleInfo";
|
||||||
};
|
};
|
||||||
|
class blck_displayLootMarkers
|
||||||
|
{
|
||||||
|
items[] = {
|
||||||
|
"blck_lootMarkersOn",
|
||||||
|
"blck_lootMarkersOff"
|
||||||
|
};
|
||||||
|
text = "Toggle Loot Vehicle Markers";
|
||||||
|
};
|
||||||
|
class blck_lootMarkersOn
|
||||||
|
{
|
||||||
|
text = "Mark Loot Vehicles / Objects";
|
||||||
|
action = "[true] call blck3DEN_fnc_displayLootMarkers";
|
||||||
|
};
|
||||||
|
class blck_lootMarkersOff
|
||||||
|
{
|
||||||
|
text = "Hide Markers of Loot Vehicles / Objects";
|
||||||
|
action = "[false] call blck3DEN_fnc_displayLootMarkers";
|
||||||
|
};
|
||||||
/////////////////////////////
|
/////////////////////////////
|
||||||
class blckSaveStaticMission
|
class blckSaveStaticMission
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user