mirror of
https://github.com/EpochModTeam/Epoch.git
synced 2024-08-30 18:22:13 +00:00
global marker sets and map upgrade
New global marker sets and functions. Replace all markers for events and locations(fully configurable in CfgMarkerSets) New MapScale marker zoom feature.
This commit is contained in:
parent
90f7b5c0a3
commit
b2cf56a7b6
@ -34,7 +34,7 @@ if(_mClass isEqualTo "") exitWith {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// get config for custom marker sets
|
// get config for custom marker sets
|
||||||
_config = 'CfgLocalMarkerSets' call EPOCH_returnConfig;
|
_config = 'CfgMarkerSets' call EPOCH_returnConfig;
|
||||||
if !(isclass (_config >> _mClass)) exitwith {
|
if !(isclass (_config >> _mClass)) exitwith {
|
||||||
diag_log "EPOCHDebug: createLocalMarkerSet -2- not a class markerClass, nothing to create";
|
diag_log "EPOCHDebug: createLocalMarkerSet -2- not a class markerClass, nothing to create";
|
||||||
};
|
};
|
||||||
|
@ -26,7 +26,7 @@ if(_mClass isEqualTo "") exitWith {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// get config for custom marker sets
|
// get config for custom marker sets
|
||||||
_config = 'CfgLocalMarkerSets' call EPOCH_returnConfig;
|
_config = 'CfgMarkerSets' call EPOCH_returnConfig;
|
||||||
if !(isclass (_config >> _mClass)) exitwith {
|
if !(isclass (_config >> _mClass)) exitwith {
|
||||||
diag_log "EPOCHDebug: deleteLocalMarkerSet -2- not a class markerClass, nothing to delete";
|
diag_log "EPOCHDebug: deleteLocalMarkerSet -2- not a class markerClass, nothing to delete";
|
||||||
};
|
};
|
||||||
|
@ -359,7 +359,7 @@ if !(_playerTempKey isEqualTo "EPOCH_playerTemp") then {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// Check for PlayerMarker and Update or Remove it
|
// Check for PlayerMarker and Update or Remove it
|
||||||
_config = 'CfgLocalMarkerSets' call EPOCH_returnConfig;
|
_config = 'CfgMarkerSets' call EPOCH_returnConfig;
|
||||||
_markerArray = getArray(_config >> 'PlayerMarker' >> 'markerArray');
|
_markerArray = getArray(_config >> 'PlayerMarker' >> 'markerArray');
|
||||||
_markerName = (_markerArray select 0) select 0;
|
_markerName = (_markerArray select 0) select 0;
|
||||||
|
|
||||||
@ -377,6 +377,53 @@ if(_markerName in allMapMarkers)then{
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if(visibleMap)then{
|
||||||
|
_mapControl = (findDisplay 12) displayCtrl 51;
|
||||||
|
_mapScale = ctrlMapScale _mapControl;
|
||||||
|
_zoomMarkers = allMapMarkers;
|
||||||
|
if(isNil {EPOCH_lastMapScale})then{EPOCH_lastMapScale = 0};
|
||||||
|
for "_i" from 0 to ((count _zoomMarkers) - 1) do {
|
||||||
|
_zoomMarker = _zoomMarkers select _i;
|
||||||
|
switch(true)do{
|
||||||
|
case ( (_mapScale >= 0.95) && (_mapScale <= 1) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [0.666,0.666];
|
||||||
|
//_zoomMarker setMarkerAlphaLocal 0;
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.75) && (_mapScale < 0.95) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [0.8,0.8];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.55) && (_mapScale < 0.75) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [1,1];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.5) && (_mapScale < 0.55) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [1.1,1.1];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.45) && (_mapScale < 0.5) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [1.2,1.2];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.35) && (_mapScale < 0.45) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [1.4,1.4];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.25) && (_mapScale < 0.35) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [1.666,1.666];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.15) && (_mapScale < 0.25) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [1.8,1.8];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.1) && (_mapScale < 0.15) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [1.9,1.9];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0.0666) && (_mapScale < 0.1) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [2.2,2.2];
|
||||||
|
};
|
||||||
|
case ( (_mapScale >= 0) && (_mapScale < 0.0666) ): {
|
||||||
|
_zoomMarker setMarkerSizeLocal [2.666,2.666];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
EPOCH_lastMapScale = _mapScale;
|
||||||
|
};
|
||||||
|
|
||||||
// force update
|
// force update
|
||||||
if (EPOCH_forceUpdateNow) then {
|
if (EPOCH_forceUpdateNow) then {
|
||||||
EPOCH_forceUpdateNow = false;
|
EPOCH_forceUpdateNow = false;
|
||||||
|
@ -41,12 +41,12 @@ class CfgActionMenu
|
|||||||
dyna_WeapsMagsTurret = "call {_out = [];if (dyna_inVehicle) then {_added = [];{_weapon = _x;_WeaponMags = ((vehicle player) magazinesTurret dyna_Turret) select {(_x in (getArray (configFile >> 'CfgWeapons' >> _weapon >> 'magazines'))) && !((getText (configFile >> 'CfgMagazines' >> _x >> 'picture')) isequalto '')};if !(_WeaponMags isequalto []) then {{if !(_x in _added) then {_out pushback [_weapon,_x];_added pushback _x;};} foreach _WeaponMags;};} foreach dyna_weaponsTurret;};_out}";
|
dyna_WeapsMagsTurret = "call {_out = [];if (dyna_inVehicle) then {_added = [];{_weapon = _x;_WeaponMags = ((vehicle player) magazinesTurret dyna_Turret) select {(_x in (getArray (configFile >> 'CfgWeapons' >> _weapon >> 'magazines'))) && !((getText (configFile >> 'CfgMagazines' >> _x >> 'picture')) isequalto '')};if !(_WeaponMags isequalto []) then {{if !(_x in _added) then {_out pushback [_weapon,_x];_added pushback _x;};} foreach _WeaponMags;};} foreach dyna_weaponsTurret;};_out}";
|
||||||
|
|
||||||
dyna_mapPlayerMarkerON = "(getNumber(('CfgEpochClient' call EPOCH_returnConfig) >> 'playerLocationMarkerGPSOnly') isEqualTo 1)";
|
dyna_mapPlayerMarkerON = "(getNumber(('CfgEpochClient' call EPOCH_returnConfig) >> 'playerLocationMarkerGPSOnly') isEqualTo 1)";
|
||||||
dyna_mapPlayerMarker = "(((getArray(('CfgLocalMarkerSets' call EPOCH_returnConfig) >> 'PlayerMarker' >> 'markerArray') select 0) select 0) in allMapMarkers)";
|
dyna_mapPlayerMarker = "(((getArray(('CfgMarkerSets' call EPOCH_returnConfig) >> 'PlayerMarker' >> 'markerArray') select 0) select 0) in allMapMarkers)";
|
||||||
|
|
||||||
dyna_deathMarkerON = "(getNumber(('CfgEpochClient' call EPOCH_returnConfig) >> 'playerDeathMarkerGPSOnly') isEqualTo 1)";
|
dyna_deathMarkerON = "(getNumber(('CfgEpochClient' call EPOCH_returnConfig) >> 'playerDeathMarkerGPSOnly') isEqualTo 1)";
|
||||||
dyna_deathMarker = "profileNameSpace getVariable['EPOCHLastKnownDeath',[]]";
|
dyna_deathMarker = "profileNameSpace getVariable['EPOCHLastKnownDeath',[]]";
|
||||||
dyna_deathMarkerAvail = "!(dyna_deathMarker isEqualTo [])";
|
dyna_deathMarkerAvail = "!(dyna_deathMarker isEqualTo [])";
|
||||||
dyna_mapDeathMarker = "(((getArray(('CfgLocalMarkerSets' call EPOCH_returnConfig) >> 'DeathMarker' >> 'markerArray') select 0) select 0) in allMapMarkers)";
|
dyna_mapDeathMarker = "(((getArray(('CfgMarkerSets' call EPOCH_returnConfig) >> 'DeathMarker' >> 'markerArray') select 0) select 0) in allMapMarkers)";
|
||||||
};
|
};
|
||||||
|
|
||||||
class self
|
class self
|
||||||
|
@ -5,24 +5,164 @@
|
|||||||
Use ['Name',position] call EPOCH_fnc_createLocalMarkerSet;
|
Use ['Name',position] call EPOCH_fnc_createLocalMarkerSet;
|
||||||
|
|
||||||
Global Markers are mostly for server use
|
Global Markers are mostly for server use
|
||||||
Use ['Name',position] call EPOCH_fnc_createGlobalMarkerSet;
|
Use ['Name',position] call EPOCH_server_createGlobalMarkerSet;
|
||||||
|
|
||||||
*/
|
*/
|
||||||
class CfgLocalMarkerSets
|
class CfgMarkerSets
|
||||||
{
|
{
|
||||||
brushes[] = {"Solid","SolidFull","Horizontal","Vertical","Grid","FDiagonal","BDiagonal","DiagGrid","Cross","Border","SolidBorder"};
|
brushes[] = {"Solid","SolidFull","Horizontal","Vertical","Grid","FDiagonal","BDiagonal","DiagGrid","Cross","Border","SolidBorder"};
|
||||||
class PlayerMarker {
|
class PlayerMarker {
|
||||||
markerArray[] = {
|
markerArray[] = {
|
||||||
{"PlayerMarker1","ICON","EpochGPS","ColorBlue",1,{0.8,0.8},0,"format['%1/%2',(format[mapGridPosition player]) select [0,3],(format[mapGridPosition player]) select [3,3]]"},
|
{"PlayerMarker1","ICON","EpochActive_Hex","ColorBlue",1,{0.9,0.9}},
|
||||||
{"PlayerMarker2","ICON","EpochActive_Hex","ColorBlue",1,{0.8,0.8}},
|
{"PlayerMarker2","ICON","EpochBG_Hex","ColorWhite",0.3,{0.9,0.9}},
|
||||||
{"PlayerMarker3","ICON","EpochBG_Hex","ColorWhite",0.3,{0.8,0.8}}
|
{"PlayerMarker3","ICON","EpochGPS","ColorBlue",1,{0.8,0.8},0,"format['%1/%2',(format[mapGridPosition player]) select [0,3],(format[mapGridPosition player]) select [3,3]]"}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
class DeathMarker {
|
class DeathMarker {
|
||||||
markerArray[] = {
|
markerArray[] = {
|
||||||
{"DeathMarker1","ICON","EpochSkull","ColorRed",1,{0.8,0.8},0,"str(name player)"},
|
|
||||||
{"DeathMarker2","ICON","EpochActive_Circle","ColorRed",1,{0.8,0.8}},
|
{"DeathMarker1","ICON","EpochActive_Circle","ColorRed",1,{0.9,0.9}},
|
||||||
{"DeathMarker3","ICON","EpochBG_Circle","ColorPink",0.3,{0.8,0.8}}
|
{"DeathMarker2","ICON","EpochBG_Circle","ColorPink",0.3,{0.9,0.9}},
|
||||||
|
{"DeathMarker3","ICON","EpochSkull","ColorRed",1,{0.8,0.8},0,"str(name player)"}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class EpochDebugBox {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochActive_Square","ColorGreen",1,{1,1}},
|
||||||
|
{"","ICON","EpochBG_Square","ColorBlack",0.2,{1,1}},
|
||||||
|
{"","ICON","EpochRespawn","ColorGreen",0.75,{1,1}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class PlantSpawn {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochActive_Diamond","ColorGreen",1,{1.1,1.1}},
|
||||||
|
{"","ICON","EpochBG_Diamond","ColorBlack",0.2,{1.1,1.1}},
|
||||||
|
{"","ICON","EpochPlant","ColorGreen",0.9,{1.2,1.2}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class AirDrop {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochActive_Diamond","ColorGreen",1,{1.1,1.1}},
|
||||||
|
{"","ICON","EpochBG_Diamond","ColorBlack",0.2,{1.1,1.1}},
|
||||||
|
{"","ICON","EpochAirdrop","ColorGreen",0.75,{1.2,1.2}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class Carnival {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochActive_Diamond","ColorOrange",1,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochBG_Diamond","ColorBlack",0.2,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochCarnival","ColorOrange",0.75,{1.3,1.3}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class Container {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochActive_Diamond","ColorOrange",1,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochBG_Diamond","ColorBlack",0.2,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochContainer","ColorOrange",0.75,{1.3,1.3}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class EarthQuake {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochActive_Circle","ColorGrey",1,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochBG_Circle","ColorBlack",0.2,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochGem","ColorRed",1,{1.3,1.3}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class ServicePoint {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Circle","ColorGrey",0.25,{0.85,0.85}},
|
||||||
|
{"","ICON","EpochActive_Circle","ColorBlack",1,{0.85,0.85}},
|
||||||
|
{"","ICON","EpochService","ColorGrey",1,{0.9,0.9},0,"'Service Point'"}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class Radiation {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Triangle","ColorBlack",0.3,{1.8,1.8}},
|
||||||
|
{"","ICON","EpochActive_Triangle","ColorYellow",1,{1.7,1.7}},
|
||||||
|
{"","ICON","EpochRadiation","ColorYellow",1,{0.95,0.95}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class Satellite {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Triangle","ColorBlack",0.15,{1.5,1.5},58},
|
||||||
|
{"","ICON","EpochActive_Triangle","ColorYellow",0.5,{1.3,1.3},58},
|
||||||
|
{"","ICON","EpochSatellite","ColorYellow",1,{0.75,0.75},58}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class MissionNoob {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Square","ColorBlack",0.15,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochActive_Square","ColorGreen",0.5,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochMissionNoob1","ColorYellow",1,{1,1}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class MissionNoobPlus {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Square","ColorBlack",0.15,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochActive_Square","ColorGreen",0.75,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochMissionNoob2","ColorYellow",1,{1,1}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class MissionSurvivor {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Square","ColorBlack",0.15,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochActive_Square","ColorBlue",0.5,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochMissionMedium1","ColorGreen",1,{1,1}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class MissionSurvivorPlus {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Square","ColorBlack",0.15,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochActive_Square","ColorBlue",0.75,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochMissionMedium2","ColorGreen",1,{1,1}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class MissionSlaughter {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Square","ColorBlack",0.15,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochActive_Square","ColorRed",0.5,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochMissionVeteran1","ColorBlue",1,{1,1}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class MissionSlaughterPlus {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Square","ColorBlack",0.15,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochActive_Square","ColorRed",0.75,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochMissionVeteran2","ColorBlue",1,{1,1}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class IGSafeZones {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","mil_warning","ColorRed",1,{1,1},0,"format['SafeZone%1',IGSZCounter];IGSZCounter = IGSZCounter+1"},
|
||||||
|
{"","ELLIPSE","Grid","ColorGreen",1,{250,250}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class StaticTrader {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Circle","ColorWhite",0.15,{0.8,0.8}},
|
||||||
|
{"","ICON","EpochActive_Circle","ColorRed",0.75,{0.8,0.8}},
|
||||||
|
{"","ICON","EpochStaticTrader","ColorBlack",1,{0.7,0.7}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class DynamicTrader {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Circle","ColorWhite",0.15,{0.8,0.8}},
|
||||||
|
{"","ICON","EpochActive_Circle","ColorGreen",0.75,{0.8,0.8}},
|
||||||
|
{"","ICON","EpochDynamicTrader","ColorBrown",1,{0.7,0.7}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class NewDynamicTrader {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Circle","ColorWhite",0.15,{0.8,0.8}},
|
||||||
|
{"","ICON","EpochActive_Circle","ColorKhaki",0.75,{0.8,0.8}},
|
||||||
|
{"","ICON","EpochStaticTrader","ColorKhaki",1,{0.7,0.7}}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class Shipwreck {
|
||||||
|
markerArray[] = {
|
||||||
|
{"","ICON","EpochBG_Circle","ColorWhite",0.15,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochActive_Circle","ColorOrange",1,{1.2,1.2}},
|
||||||
|
{"","ICON","EpochShipwreck","ColorOrange",1,{1.3,1.3}}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -22,11 +22,7 @@ private ["_item","_marker"];
|
|||||||
_item setMass 220;
|
_item setMass 220;
|
||||||
|
|
||||||
if (EPOCH_SHOW_BOATLOOT) then {
|
if (EPOCH_SHOW_BOATLOOT) then {
|
||||||
_marker = createMarker[str(_x), _x];
|
_markers = ["Shipwreck",_x] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
|
||||||
_marker setMarkerType "mil_dot";
|
|
||||||
// _marker setMarkerText "Shipwreck";
|
|
||||||
_marker setMarkerColor "ColorOrange";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
} foreach (getArray (configFile >> "CfgEpoch" >> worldname >> "containerPos"));
|
} foreach (getArray (configFile >> "CfgEpoch" >> worldname >> "containerPos"));
|
||||||
|
@ -0,0 +1,91 @@
|
|||||||
|
/*
|
||||||
|
|
||||||
|
Author: DirtySanchez
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
|
||||||
|
Description:
|
||||||
|
Utilize new Epoch Active Markers, Backgrounds and Icons courtesy of DrokZ.
|
||||||
|
|
||||||
|
Licence:
|
||||||
|
Arma Public License Share Alike (APL-SA) - https://www.bistudio.com/community/licenses/arma-public-license-share-alike
|
||||||
|
|
||||||
|
Github:
|
||||||
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_server/EPOCH_server_createGlobalMarkerSet.sqf
|
||||||
|
|
||||||
|
usage:
|
||||||
|
[_markerClass, _position] call EPOCH_server_createGlobalMarkerSet;
|
||||||
|
|
||||||
|
_markerClass(_mClass) - use one of the class markers in the epoch_configs/Configs/CfgMarkerSets.hpp or create new
|
||||||
|
|
||||||
|
_position(_mPos) - position you would like to place the marker set on the map
|
||||||
|
|
||||||
|
Example:
|
||||||
|
1. ['DeathMarker',_pos] call EPOCH_server_createGlobalMarkerSet;
|
||||||
|
|
||||||
|
2. ['PlayerMarker',_pos] call EPOCH_server_createGlobalMarkerSet;
|
||||||
|
|
||||||
|
*/
|
||||||
|
private["_config", "_markerArray", "_ccText"];
|
||||||
|
|
||||||
|
params [ ["_mClass",""], ["_mPos",[0,0,0]], ["_data",[]] ];
|
||||||
|
if(_mClass isEqualTo "") exitWith {
|
||||||
|
diag_log "EPOCHDebug: createGlobalMarkerSet -1- empty markerClass, nothing to create";
|
||||||
|
};
|
||||||
|
|
||||||
|
// get config for custom marker sets
|
||||||
|
_config = 'CfgMarkerSets' call EPOCH_returnConfig;
|
||||||
|
if !(isclass (_config >> _mClass)) exitwith {
|
||||||
|
diag_log "EPOCHDebug: createGlobalMarkerSet -2- not a class markerClass, nothing to create";
|
||||||
|
};
|
||||||
|
|
||||||
|
// get array for custom marker set
|
||||||
|
_markerArray = getArray(_config >> _mClass >> "markerArray");
|
||||||
|
if(_markerArray isEqualTo []) exitWith {
|
||||||
|
diag_log "EPOCHDebug: createGlobalMarkerSet -3- empty markerArray, nothing to create";
|
||||||
|
};
|
||||||
|
|
||||||
|
// check for defined Marker counter
|
||||||
|
if(isNil {Epoch_markerCounterGlobal})then{Epoch_markerCounterGlobal = 0};
|
||||||
|
|
||||||
|
_return = [];
|
||||||
|
// run forEach loop on array
|
||||||
|
{
|
||||||
|
// double check all, use these defaults if not defined
|
||||||
|
_x params [
|
||||||
|
["_mName",format["globalMarker__%1", Epoch_markerCounterGlobal]],
|
||||||
|
["_mShape","ICON"],
|
||||||
|
["_mType","hd_dot"],
|
||||||
|
["_mColor","ColorBlack"],
|
||||||
|
["_mAlpha",1],
|
||||||
|
["_mSize",[0.8,0.8]],
|
||||||
|
["_mDir",0],
|
||||||
|
["_mText",""]
|
||||||
|
];
|
||||||
|
_mName = format["globalMarker_%1", Epoch_markerCounterGlobal];
|
||||||
|
_marker = createMarker [_mName, _mPos];
|
||||||
|
_return pushBack _mName;
|
||||||
|
_mName setMarkerShape _mShape;
|
||||||
|
if!(_mShape isEqualTo "ICON")then{
|
||||||
|
if!(_mType in (getArray(_config >> "brushes")))exitWith{
|
||||||
|
diag_log "EPOCHDebug: createGlobalMarkerSet -5- Shape is Ellipse or Rectangle and needs a Brush Type";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
_mName setMarkerType _mType;
|
||||||
|
_mName setMarkerAlpha _mAlpha;
|
||||||
|
_mName setMarkerSize _mSize;
|
||||||
|
_mName setMarkerDir _mDir;
|
||||||
|
|
||||||
|
if!(_mText isEqualTo "")then{
|
||||||
|
_ccText = call compile _mText;
|
||||||
|
_mName setMarkerText _ccText;
|
||||||
|
};
|
||||||
|
|
||||||
|
if!(_mColor isEqualTo "")then{
|
||||||
|
_mName setMarkerColor _mColor
|
||||||
|
};
|
||||||
|
|
||||||
|
Epoch_markerCounterGlobal = Epoch_markerCounterGlobal + 1;
|
||||||
|
}forEach _markerArray;
|
||||||
|
|
||||||
|
_return
|
@ -0,0 +1,31 @@
|
|||||||
|
/*
|
||||||
|
Author: DirtySanchez - EpochMod.com
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
|
||||||
|
Description:
|
||||||
|
Delete Marker Set
|
||||||
|
|
||||||
|
License:
|
||||||
|
Arma Public License Share Alike (APL-SA) - https://www.bistudio.com/community/licenses/arma-public-license-share-alike
|
||||||
|
|
||||||
|
Github:
|
||||||
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_server/EPOCH_server_deleteGlobalMarkerSet.sqf
|
||||||
|
|
||||||
|
usage:
|
||||||
|
[_markerArray] call EPOCH_server_deleteGlobalMarkerSet;
|
||||||
|
|
||||||
|
_markerArray - 1 or more in game marker names
|
||||||
|
*/
|
||||||
|
private["_mName"];
|
||||||
|
|
||||||
|
params [ ["_markerArray",[]], ["_data",[]] ];
|
||||||
|
|
||||||
|
if(_markerArray isEqualTo []) exitWith {
|
||||||
|
diag_log "EPOCHDebug: deleteGlobalMarkerSet -1- empty markerArray, nothing to delete";
|
||||||
|
};
|
||||||
|
|
||||||
|
{
|
||||||
|
_mName = _x;
|
||||||
|
deleteMarker _mName;
|
||||||
|
}forEach _markerArray;
|
@ -13,13 +13,15 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_server/EPOCH_server_traderKilled.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_server/EPOCH_server_traderKilled.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_marker","_objHiveKey","_slot","_playerCStats","_playerKarma","_playerKarmaAdj","_kIndex"];
|
private ["_markers","_objHiveKey","_slot","_playerCStats","_playerKarma","_playerKarmaAdj","_kIndex"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
params ["_trader","_player"];
|
params ["_trader","_player"];
|
||||||
if (!isNull _trader) then {
|
if (!isNull _trader) then {
|
||||||
_marker = _trader getVariable["MARKER_REF",""];
|
_markers = _trader getVariable["MARKER_REF",""];
|
||||||
if (_marker != "") then {
|
if (_markers != []) then {
|
||||||
_marker setMarkerColor "ColorRed";
|
{
|
||||||
|
_x setMarkerColor "ColorRed";
|
||||||
|
}forEach _markers;
|
||||||
};
|
};
|
||||||
_slot = _trader getVariable["AI_SLOT", -1];
|
_slot = _trader getVariable["AI_SLOT", -1];
|
||||||
if (_slot != -1) then {
|
if (_slot != -1) then {
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_traders/EPOCH_server_loadTraders.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_traders/EPOCH_server_loadTraders.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_agent","_aiTables","_arr","_class","_currentStock","_existingStock","_home","_indexStock","_limit","_marker","_objHiveKey","_pos","_randomAIUniform","_response","_schedule","_serverSettingsConfig","_staticTrader","_staticTradersArrCount","_staticTradersArray","_storedVehicleLimit","_toBeRemoved","_traderSlotIndex","_work"];
|
private ["_agent","_aiTables","_arr","_class","_currentStock","_existingStock","_home","_indexStock","_limit","_markers","_objHiveKey","_pos","_randomAIUniform","_response","_schedule","_serverSettingsConfig","_staticTrader","_staticTradersArrCount","_staticTradersArray","_storedVehicleLimit","_toBeRemoved","_traderSlotIndex","_work"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
params [["_maxTraderLimit",0]];
|
params [["_maxTraderLimit",0]];
|
||||||
|
|
||||||
@ -110,12 +110,8 @@ for "_i" from 0 to (_maxTraderLimit-1) do {
|
|||||||
EPOCH_TraderSlots deleteAt _traderSlotIndex;
|
EPOCH_TraderSlots deleteAt _traderSlotIndex;
|
||||||
|
|
||||||
if (EPOCH_SHOW_TRADERS) then {
|
if (EPOCH_SHOW_TRADERS) then {
|
||||||
_marker = createMarker [str(_agent), (_pos)];
|
_markers = ["StaticTrader",_pos] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
_agent setVariable["MARKER_REF", _markers];
|
||||||
_marker setMarkerType "mil_dot";
|
|
||||||
_marker setMarkerColor "ColorBlack";
|
|
||||||
|
|
||||||
_agent setVariable["MARKER_REF", _marker];
|
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
// Spawn dynamic traders
|
// Spawn dynamic traders
|
||||||
@ -227,11 +223,8 @@ for "_i" from 0 to (_maxTraderLimit-1) do {
|
|||||||
EPOCH_TraderSlots deleteAt _traderSlotIndex;
|
EPOCH_TraderSlots deleteAt _traderSlotIndex;
|
||||||
|
|
||||||
if (EPOCH_SHOW_TRADERS) then {
|
if (EPOCH_SHOW_TRADERS) then {
|
||||||
_marker = createMarker [str(_agent), (_pos)];
|
_markers = ["DynamicTrader",_pos] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
_agent setVariable["MARKER_REF", _markers];
|
||||||
_marker setMarkerType "mil_dot";
|
|
||||||
_marker setMarkerColor "ColorBrown";
|
|
||||||
_agent setVariable["MARKER_REF", _marker];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_traders/EPOCH_server_spawnTraders.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_traders/EPOCH_server_spawnTraders.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_acceptableBlds","_agent","_aiClass","_aiTables","_buildingHome","_buildingWork","_buildings","_checkBuilding","_config","_endTime","_home","_homes","_marker","_objHiveKey","_pos","_position","_randomAIUniform","_return","_schedule","_slot","_spawnCount","_startTime","_traderHomes","_usedBuildings","_work"];
|
private ["_acceptableBlds","_agent","_aiClass","_aiTables","_buildingHome","_buildingWork","_buildings","_checkBuilding","_config","_endTime","_home","_homes","_markers","_objHiveKey","_pos","_position","_randomAIUniform","_return","_schedule","_slot","_spawnCount","_startTime","_traderHomes","_usedBuildings","_work"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
_spawnCount = count EPOCH_TraderSlots;
|
_spawnCount = count EPOCH_TraderSlots;
|
||||||
_config = (configFile >> "CfgEpoch" >> worldName);
|
_config = (configFile >> "CfgEpoch" >> worldName);
|
||||||
@ -67,11 +67,8 @@ for "_i" from 1 to _spawnCount do {
|
|||||||
};
|
};
|
||||||
["AI", _objHiveKey, [_aiClass, _home, [_work, _schedule]] ] call EPOCH_fnc_server_hiveSET;
|
["AI", _objHiveKey, [_aiClass, _home, [_work, _schedule]] ] call EPOCH_fnc_server_hiveSET;
|
||||||
if (EPOCH_SHOW_TRADERS) then {
|
if (EPOCH_SHOW_TRADERS) then {
|
||||||
_marker = createMarker[str(_agent), (_pos)];
|
_markers = ["NewDynamicTrader",_pos] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
_agent setVariable["MARKER_REF", _markers];
|
||||||
_marker setMarkerType "mil_dot";
|
|
||||||
_marker setMarkerColor "ColorKhaki";
|
|
||||||
_agent setVariable["MARKER_REF", _marker];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -123,6 +123,8 @@ class CfgServerFunctions
|
|||||||
class serverCommand {};
|
class serverCommand {};
|
||||||
class server_makeMarker {};
|
class server_makeMarker {};
|
||||||
class server_removeMarker {};
|
class server_removeMarker {};
|
||||||
|
class server_createGlobalMarkerSet {};
|
||||||
|
class server_deleteGlobalMarkerSet {};
|
||||||
};
|
};
|
||||||
class epoch_missions {
|
class epoch_missions {
|
||||||
class Server_createObject {};
|
class Server_createObject {};
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/init/server_init.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/init/server_init.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_ReservedSlots","_SideHQ1","_SideHQ2","_SideHQ3","_abortAndError","_allowedVehicleIndex","_allowedVehicleListName","_allowedVehiclesList","_allowedVehiclesListArray","_cfgServerVersion","_channelColor","_channelNumber","_channelTXT","_clientVersion","_config","_configSize","_configVersion","_date","_dateChanged","_epochConfig","_epochWorldPath","_existingStock","_hiveVersion","_index","_indexStock","_instanceID","_marker","_markercolor","_markertxt","_markertype","_pos","_radio","_response","_sapper","_serverConfig","_serverSettingsConfig","_servicepoints","_startTime","_staticDateTime","_staticFuelSources","_timeDifference","_vehicleCount","_vehicleSlotLimit","_worldSize"];
|
private ["_ReservedSlots","_SideHQ1","_SideHQ2","_SideHQ3","_abortAndError","_allowedVehicleIndex","_allowedVehicleListName","_allowedVehiclesList","_allowedVehiclesListArray","_cfgServerVersion","_channelColor","_channelNumber","_channelTXT","_clientVersion","_config","_configSize","_configVersion","_date","_dateChanged","_epochConfig","_epochWorldPath","_existingStock","_hiveVersion","_index","_indexStock","_instanceID","_marker","_markers","_markercolor","_markertxt","_markertype","_pos","_radio","_response","_sapper","_serverConfig","_serverSettingsConfig","_servicepoints","_startTime","_staticDateTime","_staticFuelSources","_timeDifference","_vehicleCount","_vehicleSlotLimit","_worldSize"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
_startTime = diag_tickTime;
|
_startTime = diag_tickTime;
|
||||||
missionNamespace setVariable ['Epoch_ServerVersion', getText(configFile >> "CfgMods" >> "Epoch" >> "version"), true];
|
missionNamespace setVariable ['Epoch_ServerVersion', getText(configFile >> "CfgMods" >> "Epoch" >> "version"), true];
|
||||||
@ -245,14 +245,8 @@ _servicepoints = getArray (_config >> worldname >> 'ServicePoints');
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
if !(_markertype isequalto "") then {
|
if !(_markertype isequalto "") then {
|
||||||
_marker = createMarker [('ServicePointMarker'+(str _foreachindex)), _pos];
|
//_marker = createMarker [('ServicePointMarker'+(str _foreachindex)), _pos];
|
||||||
_marker setmarkertype _markertype;
|
_markers = ["ServicePoint", _pos] call EPOCH_server_createGlobalMarkerSet;
|
||||||
if !(_markercolor isequalto "") then {
|
|
||||||
_marker setmarkercolor _markercolor;
|
|
||||||
};
|
|
||||||
if !(_markertxt isequalto "") then {
|
|
||||||
_marker setMarkerText _markertxt;
|
|
||||||
};
|
|
||||||
if !(surfaceiswater _pos) then {
|
if !(surfaceiswater _pos) then {
|
||||||
"Land_HelipadCircle_F" createvehicle _pos;
|
"Land_HelipadCircle_F" createvehicle _pos;
|
||||||
};
|
};
|
||||||
@ -290,12 +284,7 @@ if !(_radioactiveLocations isEqualTo []) then {
|
|||||||
_locations = _locations - [_selectedLoc];
|
_locations = _locations - [_selectedLoc];
|
||||||
_radioactiveLocationsTmp pushBack [_selectedLoc,random 666];
|
_radioactiveLocationsTmp pushBack [_selectedLoc,random 666];
|
||||||
private _position = locationPosition _selectedLoc;
|
private _position = locationPosition _selectedLoc;
|
||||||
_marker = name _selectedLoc;
|
_markers = ["Radiation", _position] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker = createMarker[_marker, _position];
|
|
||||||
_marker setMarkerShape "ICON";
|
|
||||||
_marker setMarkerType "hd_warning";
|
|
||||||
_marker setMarkerColor "ColorRed";
|
|
||||||
// _marker setMarkerText "Radioactive";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/CarnivalSpawner.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/CarnivalSpawner.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_ferrisPosition","_item","_marker"];
|
private ["_ferrisPosition","_item","_markers"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
_ferrisPosition = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 4000, 0] call BIS_fnc_findSafePos;
|
_ferrisPosition = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 4000, 0] call BIS_fnc_findSafePos;
|
||||||
if ((count _ferrisPosition) == 2) then{
|
if ((count _ferrisPosition) == 2) then{
|
||||||
@ -18,10 +18,6 @@ if ((count _ferrisPosition) == 2) then{
|
|||||||
} forEach["Carnival_Tent", "Land_Slide_F", "Carnival_Tent", "Land_Carousel_01_F", "Carnival_Tent", "Carnival_Tent"];
|
} forEach["Carnival_Tent", "Land_Slide_F", "Carnival_Tent", "Land_Carousel_01_F", "Carnival_Tent", "Carnival_Tent"];
|
||||||
|
|
||||||
if (EPOCH_showShippingContainers) then{
|
if (EPOCH_showShippingContainers) then{
|
||||||
_marker = createMarker[str(_ferrisPosition), _ferrisPosition];
|
_markers = ["Carnival",_ferrisPosition] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
|
||||||
_marker setMarkerType "mil_dot";
|
|
||||||
// _marker setMarkerText "Ferris";
|
|
||||||
_marker setMarkerColor "ColorOrange";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -6,16 +6,12 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/ContainterSpawner.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/ContainterSpawner.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_cargoPosition","_item","_marker"];
|
private ["_cargoPosition","_item","_markers"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
_cargoPosition = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 4000, 1] call BIS_fnc_findSafePos;
|
_cargoPosition = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 4000, 1] call BIS_fnc_findSafePos;
|
||||||
if ((count _cargoPosition) == 2) then{
|
if ((count _cargoPosition) == 2) then{
|
||||||
_item = createVehicle["Cargo_Container", _cargoPosition, [], 0.0, "CAN_COLLIDE"];
|
_item = createVehicle["Cargo_Container", _cargoPosition, [], 0.0, "CAN_COLLIDE"];
|
||||||
if (EPOCH_showShippingContainers) then{
|
if (EPOCH_showShippingContainers) then{
|
||||||
_marker = createMarker[str(_cargoPosition), _cargoPosition];
|
_markers = ["Container",_cargoPosition] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
|
||||||
_marker setMarkerType "mil_dot";
|
|
||||||
// _marker setMarkerText "Container";
|
|
||||||
_marker setMarkerColor "ColorOrange";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/Earthquake.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/Earthquake.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_chance","_item","_marker","_minerals","_playersNearEpicenter","_position"];
|
private ["_chance","_item","_markers","_minerals","_playersNearEpicenter","_position"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
_position = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 1000, 0] call BIS_fnc_findSafePos;
|
_position = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 1000, 0] call BIS_fnc_findSafePos;
|
||||||
if ((count _position) == 2) then{
|
if ((count _position) == 2) then{
|
||||||
@ -24,11 +24,7 @@ if ((count _position) == 2) then{
|
|||||||
_minerals = ["MineralDepositCopper_EPOCH", "MineralDepositGold_EPOCH", "MineralDepositSilver_EPOCH"];
|
_minerals = ["MineralDepositCopper_EPOCH", "MineralDepositGold_EPOCH", "MineralDepositSilver_EPOCH"];
|
||||||
_item = createVehicle[(selectRandom _minerals), _position, [], 0.0, "CAN_COLLIDE"];
|
_item = createVehicle[(selectRandom _minerals), _position, [], 0.0, "CAN_COLLIDE"];
|
||||||
if (EPOCH_showEarthQuakes) then{
|
if (EPOCH_showEarthQuakes) then{
|
||||||
_marker = createMarker[str(_position), _position];
|
_markers = ["EarthQuake",_position] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
|
||||||
_marker setMarkerType "hd_objective";
|
|
||||||
// _marker setMarkerText "Mineral";
|
|
||||||
_marker setMarkerColor "ColorGrey";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -7,3 +7,5 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
{[_x,100] call EPOCH_server_effectCrypto;} forEach (allPlayers select {alive _x});
|
{[_x,100] call EPOCH_server_effectCrypto;} forEach (allPlayers select {alive _x});
|
||||||
|
|
||||||
|
// Add on screen notification large crypto symbol and maybe audio clip CHA-CHING, configurable option for hosts
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/PlantSpawner.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/PlantSpawner.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_debug","_decayTime","_jammers","_marker","_nearbyLocations","_plant","_plantCount","_plants","_playersNearby","_position","_restricted","_scatter","_selectedLocation","_showPlantMarkers","_timeStamp"];
|
private ["_debug","_decayTime","_jammers","_markers","_nearbyLocations","_plant","_plantCount","_plants","_playersNearby","_position","_restricted","_scatter","_selectedLocation","_showPlantMarkers","_timeStamp"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
|
|
||||||
// SET THIS TO TRUE TO GET MESSAGES IN LOG.
|
// SET THIS TO TRUE TO GET MESSAGES IN LOG.
|
||||||
@ -97,10 +97,7 @@ if ((count _position) == 2) then{
|
|||||||
|
|
||||||
// SET UP THE MARKER.
|
// SET UP THE MARKER.
|
||||||
if (_showPlantMarkers) then{
|
if (_showPlantMarkers) then{
|
||||||
_marker = createMarker[str(_position), _position];
|
_markers = ["PlantSpawn",_position] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
|
||||||
_marker setMarkerType "waypoint";
|
|
||||||
_marker setMarkerColor "ColorGreen";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// TICK COUNTER + 1 SPAWNED PLANT PATCH.
|
// TICK COUNTER + 1 SPAWNED PLANT PATCH.
|
||||||
@ -115,23 +112,27 @@ if ((count _position) == 2) then{
|
|||||||
EPOCH_plantCounter = EPOCH_plantCounter - 1;
|
EPOCH_plantCounter = EPOCH_plantCounter - 1;
|
||||||
// DELETE THAT MARKER.
|
// DELETE THAT MARKER.
|
||||||
if (_showPlantMarkers) then{
|
if (_showPlantMarkers) then{
|
||||||
deleteMarker _marker;
|
[_markers] call EPOCH_server_deleteGlobalMarkerSet;
|
||||||
};
|
};
|
||||||
// remove any left over "dead" plants (only if decayTime is reached)
|
// remove any left over "dead" plants (only if decayTime is reached)
|
||||||
{deleteVehicle _x} forEach _plantsLeft;
|
{deleteVehicle _x} forEach _plantsLeft;
|
||||||
};
|
};
|
||||||
// set marker to brown to show 50% decay but not if already marked as picked (red).
|
// set marker to brown to show 50% decay but not if already marked as picked (red).
|
||||||
if !(getMarkerColor _marker in ["ColorRed","ColorBrown"]) then {
|
{
|
||||||
|
if !(getMarkerColor _x in ["ColorRed","ColorBrown"]) then {
|
||||||
if ((diag_tickTime - _timeStamp) > (_decayTime/2)) then {
|
if ((diag_tickTime - _timeStamp) > (_decayTime/2)) then {
|
||||||
_marker setMarkerColor "ColorBrown";
|
_x setMarkerColor "ColorBrown";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
}forEach _markers;
|
||||||
// WAIT FOR A PLAYER TO Pick one plant then set marker to red
|
// WAIT FOR A PLAYER TO Pick one plant then set marker to red
|
||||||
if (count _plantsLeft != _plantCount) then {
|
if (count _plantsLeft != _plantCount) then {
|
||||||
if (_showPlantMarkers) then{
|
if (_showPlantMarkers) then{
|
||||||
if (getMarkerColor _marker != "ColorRed") then {
|
{
|
||||||
_marker setMarkerColor "ColorRed";
|
if (getMarkerColor _x != "ColorRed") then {
|
||||||
|
_x setMarkerColor "ColorRed";
|
||||||
};
|
};
|
||||||
|
}forEach _markers;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
sleep 30;
|
sleep 30;
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/Satellite.sqf
|
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/Satellite.sqf
|
||||||
*/
|
*/
|
||||||
//[[[cog import generate_private_arrays ]]]
|
//[[[cog import generate_private_arrays ]]]
|
||||||
private ["_satellite","_marker","_playersNearEpicenter","_position","_satellites"];
|
private ["_satellite","_markers","_playersNearEpicenter","_position","_satellites"];
|
||||||
//[[[end]]]
|
//[[[end]]]
|
||||||
_position = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 1000, 0] call BIS_fnc_findSafePos;
|
_position = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 1000, 0] call BIS_fnc_findSafePos;
|
||||||
if ((count _position) == 2) then{
|
if ((count _position) == 2) then{
|
||||||
@ -25,10 +25,6 @@ if ((count _position) == 2) then{
|
|||||||
_satellite setVariable ["EPOCH_Rads", 10, true];
|
_satellite setVariable ["EPOCH_Rads", 10, true];
|
||||||
|
|
||||||
if (EPOCH_showSatellites) then{
|
if (EPOCH_showSatellites) then{
|
||||||
_marker = createMarker[str(_position), _position];
|
_markers = ["Satellite",_position] call EPOCH_server_createGlobalMarkerSet;
|
||||||
_marker setMarkerShape "ICON";
|
|
||||||
_marker setMarkerType "hd_warning";
|
|
||||||
// _marker setMarkerText "Satellite";
|
|
||||||
_marker setMarkerColor "ColorGreen";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user