diff --git a/backend/core/src/scheduler.cpp b/backend/core/src/scheduler.cpp index 1b1f249d..ddb0af38 100644 --- a/backend/core/src/scheduler.cpp +++ b/backend/core/src/scheduler.cpp @@ -194,7 +194,10 @@ void Scheduler::handleRequest(string key, json::value value, string username, js int spawnPoints = value[L"spawnPoints"].as_number().to_int32(); - if (!checkSpawnPoints(spawnPoints, coalition)) return; + if (!checkSpawnPoints(spawnPoints, coalition)) { + log(username + " insufficient spawn points ", true); + return; + } vector spawnOptions; for (auto unit : value[L"units"].as_array()) { @@ -228,7 +231,10 @@ void Scheduler::handleRequest(string key, json::value value, string username, js string country = to_string(value[L"country"]); int spawnPoints = value[L"spawnPoints"].as_number().to_int32(); - if (!checkSpawnPoints(spawnPoints, coalition)) return; + if (!checkSpawnPoints(spawnPoints, coalition)) { + log(username + " insufficient spawn points ", true); + return; + } vector spawnOptions; for (auto unit : value[L"units"].as_array()) { @@ -380,7 +386,10 @@ void Scheduler::handleRequest(string key, json::value value, string username, js string coalition = to_string(value[L"coalition"]); int spawnPoints = value[L"spawnPoints"].as_number().to_int32(); - if (!checkSpawnPoints(spawnPoints, coalition)) return; + if (coalition.compare("all") != 0 && !checkSpawnPoints(spawnPoints, coalition)) { + log(username + " insufficient spawn points ", true); + return; + } for (auto unit : value[L"units"].as_array()) { unsigned int ID = unit[L"ID"].as_integer(); diff --git a/frontend/react/index.html b/frontend/react/index.html index 1f66597c..6fd67024 100644 --- a/frontend/react/index.html +++ b/frontend/react/index.html @@ -10,7 +10,7 @@ rel="stylesheet" /> - Olympus v{{OLYMPUS_VERSION_NUMBER}} + Olympus {{OLYMPUS_VERSION_NUMBER}} diff --git a/frontend/react/public/images/icons/apc.svg b/frontend/react/public/images/icons/apc.svg new file mode 100644 index 00000000..3e40f92f --- /dev/null +++ b/frontend/react/public/images/icons/apc.svg @@ -0,0 +1,48 @@ + + + + + + + diff --git a/frontend/react/public/images/icons/artillery.svg b/frontend/react/public/images/icons/artillery.svg new file mode 100644 index 00000000..f9a27e0e --- /dev/null +++ b/frontend/react/public/images/icons/artillery.svg @@ -0,0 +1,37 @@ + + diff --git a/frontend/react/public/images/icons/ewr.svg b/frontend/react/public/images/icons/ewr.svg new file mode 100644 index 00000000..b08fe4f7 --- /dev/null +++ b/frontend/react/public/images/icons/ewr.svg @@ -0,0 +1,57 @@ + + + + + + + + diff --git a/frontend/react/public/images/icons/infantry.svg b/frontend/react/public/images/icons/infantry.svg new file mode 100644 index 00000000..66787aa5 --- /dev/null +++ b/frontend/react/public/images/icons/infantry.svg @@ -0,0 +1,40 @@ + + + + + + diff --git a/frontend/react/public/images/icons/launcher.svg b/frontend/react/public/images/icons/launcher.svg new file mode 100644 index 00000000..369291d7 --- /dev/null +++ b/frontend/react/public/images/icons/launcher.svg @@ -0,0 +1,61 @@ + + + + + + + + diff --git a/frontend/react/public/images/icons/radar.svg b/frontend/react/public/images/icons/radar.svg new file mode 100644 index 00000000..b08fe4f7 --- /dev/null +++ b/frontend/react/public/images/icons/radar.svg @@ -0,0 +1,57 @@ + + + + + + + + diff --git a/frontend/react/public/images/icons/sam.svg b/frontend/react/public/images/icons/sam.svg new file mode 100644 index 00000000..1f0e68f1 --- /dev/null +++ b/frontend/react/public/images/icons/sam.svg @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/frontend/react/public/images/icons/tactical.svg b/frontend/react/public/images/icons/tactical.svg new file mode 100644 index 00000000..05b32e60 --- /dev/null +++ b/frontend/react/public/images/icons/tactical.svg @@ -0,0 +1,37 @@ + + diff --git a/frontend/react/public/images/icons/tank.svg b/frontend/react/public/images/icons/tank.svg new file mode 100644 index 00000000..3effdf02 --- /dev/null +++ b/frontend/react/public/images/icons/tank.svg @@ -0,0 +1,47 @@ + + + + + + + diff --git a/frontend/react/public/images/icons/truck.svg b/frontend/react/public/images/icons/truck.svg new file mode 100644 index 00000000..12c9d9f0 --- /dev/null +++ b/frontend/react/public/images/icons/truck.svg @@ -0,0 +1,40 @@ + + + + + + diff --git a/frontend/react/src/olympusapp.ts b/frontend/react/src/olympusapp.ts index 1dd3c97d..8e7888fa 100644 --- a/frontend/react/src/olympusapp.ts +++ b/frontend/react/src/olympusapp.ts @@ -34,7 +34,6 @@ export var IP = window.location.toString(); export class OlympusApp { /* Global data */ - #latestVersion: string | undefined = undefined; #config: OlympusConfig; #state: OlympusState = OlympusState.NOT_INITIALIZED; #subState: OlympusSubState = NO_SUBSTATE; @@ -135,25 +134,6 @@ export class OlympusApp { this.#coalitionAreasManager = new CoalitionAreasManager(); this.#drawingsManager = new DrawingsManager(); - /* Check if we are running the latest version */ - const request = new Request("https://raw.githubusercontent.com/Pax1601/DCSOlympus/main/version.json"); - fetch(request) - .then((response) => { - if (response.status === 200) { - return response.json(); - } else { - throw new Error("Error connecting to Github to retrieve latest version"); - } - }) - .then((res) => { - this.#latestVersion = res["version"]; - const latestVersionSpan = document.getElementById("latest-version") as HTMLElement; - if (latestVersionSpan) { - latestVersionSpan.innerHTML = this.#latestVersion ?? "Unknown"; - latestVersionSpan.classList.toggle("new-version", this.#latestVersion !== VERSION); - } - }); - /* Load the config file from the server */ const configRequest = new Request("./resources/config", { headers: { diff --git a/frontend/react/src/ui/components/olicons.tsx b/frontend/react/src/ui/components/olicons.tsx index d316b5b9..ca2320f1 100644 --- a/frontend/react/src/ui/components/olicons.tsx +++ b/frontend/react/src/ui/components/olicons.tsx @@ -329,6 +329,16 @@ export const olCursorsSmokeGreen: IconDefinition = { icon: [ 32.0, 32.0, [], "", export const olCursorsSmokeOrange: IconDefinition = { icon: [ 32.0, 32.0, [], "","M 2.4865894,3.2348193 L 2.4865894,20.790103 C 2.4865894,21.367703 2.9552974,21.831678999999998 3.5281650000000004,21.831678999999998 C 3.8264333000000006,21.831678999999998 4.115235500000001,21.703846999999996 4.314081000000001,21.476595999999997 L 8.2247243,17.002553999999996 L 10.97543,22.508701999999996 C 11.349452,23.256742999999997 12.258462999999999,23.559743999999995 13.006504,23.185724999999994 C 13.754545,22.811702999999994 14.057546,21.902691999999995 13.683527999999999,21.154651999999995 L 10.999101999999999,15.771601999999994 L 16.59047,15.771601999999994 C 17.168071,15.771601999999994 17.63678,15.302890999999994 17.63678,14.725289999999994 C 17.63678,14.427021999999994 17.508951000000003,14.142955999999995 17.286430000000003,13.944110999999994 L 4.314081,2.4157613 C 4.1105025,2.2358517 3.8548429,2.1364289 3.5849798,2.1364289 C 2.9789702,2.1364289 2.4865894,2.6288096 2.4865894,3.2348193 M 18.424492,22.506882 C 18.424492,23.913856000000003 19.565998,25.055363 20.972973,25.055363 L 23.155109,25.055363 C 23.555079,25.407549 24.078933,25.621692 24.654111999999998,25.621692 C 25.229287999999997,25.621692 25.753144,25.407549 26.153114,25.055363 L 26.636263,25.055363 C 27.731756,25.055363 28.618415,24.168703 28.618415,23.073211999999998 C 28.618415,21.977719999999998 27.731755999999997,21.09106 26.636263,21.09106 C 26.446898,21.09106 26.264611,21.11761 26.091171,21.16716 C 25.712439,20.448629999999998 24.956743,19.958401 24.087782,19.958401 C 23.510835,19.958401 22.983442,20.174314 22.581701000000002,20.530039 C 22.142795000000003,20.172545 21.583547000000003,19.958401 20.972973000000003,19.958401 C 19.565998000000004,19.958401 18.424492000000004,21.099908 18.424492000000004,22.506881999999997 L 18.424492,22.506882 M 28.759998000000003,26.471185000000002 L 22.813543000000003,26.471185000000002 C 22.578161,26.471185000000002 22.388796000000003,26.660551 22.388796000000003,26.895933000000003 C 22.388796000000003,27.131314000000003 22.578161,27.320680000000003 22.813543000000003,27.320680000000003 L 28.759998000000003,27.320680000000003 C 28.995379000000003,27.320680000000003 29.184744000000002,27.131314000000003 29.184744000000002,26.895933000000003 C 29.184744000000002,26.660551 28.995379000000003,26.471185000000002 28.759998000000003,26.471185000000002 M 27.627340000000004,28.170173000000002 L 25.645187000000004,28.170173000000002 C 25.409806000000003,28.170173000000002 25.220440000000004,28.359539 25.220440000000004,28.594920000000002 C 25.220440000000004,28.830301000000002 25.409806000000003,29.019666 25.645187000000004,29.019666 L 27.627340000000004,29.019666 C 27.862721000000004,29.019666 28.052086000000003,28.830301000000002 28.052086000000003,28.594920000000002 C 28.052086000000003,28.359539 27.862721000000004,28.170173000000002 27.627340000000004,28.170173000000002 M 24.229366000000002,28.170173000000002 L 18.28291,28.170173000000002 C 18.047529,28.170173000000002 17.858163,28.359539 17.858163,28.594920000000002 C 17.858163,28.830301000000002 18.047529,29.019666 18.28291,29.019666 L 24.229366000000002,29.019666 C 24.464745,29.019666 24.654112,28.830301000000002 24.654112,28.594920000000002 C 24.654112,28.359539 24.464745,28.170173000000002 24.229366000000002,28.170173000000002 M 21.822466000000002,26.895933000000003 C 21.822466000000002,26.660551 21.633099,26.471185000000002 21.397720000000003,26.471185000000002 L 19.557150000000004,26.471185000000002 C 19.321769000000003,26.471185000000002 19.132404000000005,26.660551 19.132404000000005,26.895933000000003 C 19.132404000000005,27.131314000000003 19.321769000000003,27.320680000000003 19.557150000000004,27.320680000000003 L 21.397720000000003,27.320680000000003 C 21.633099,27.320680000000003 21.822466000000002,27.131314000000003 21.822466000000002,26.895933000000003 "], iconName: "olympus-cursors-smoke-orange" as IconName, prefix: "fas" as IconPrefix} export const olCursorsSmokeRed: IconDefinition = { icon: [ 32.0, 32.0, [], "","M 2.4865894,3.2348193 L 2.4865894,20.790103 C 2.4865894,21.367703 2.9552974,21.831678999999998 3.5281650000000004,21.831678999999998 C 3.8264333000000006,21.831678999999998 4.115235500000001,21.703846999999996 4.314081000000001,21.476595999999997 L 8.2247243,17.002553999999996 L 10.97543,22.508701999999996 C 11.349452,23.256742999999997 12.258462999999999,23.559743999999995 13.006504,23.185724999999994 C 13.754545,22.811702999999994 14.057546,21.902691999999995 13.683527999999999,21.154651999999995 L 10.999101999999999,15.771601999999994 L 16.59047,15.771601999999994 C 17.168071,15.771601999999994 17.63678,15.302890999999994 17.63678,14.725289999999994 C 17.63678,14.427021999999994 17.508951000000003,14.142955999999995 17.286430000000003,13.944110999999994 L 4.314081,2.4157613 C 4.1105025,2.2358517 3.8548429,2.1364289 3.5849798,2.1364289 C 2.9789702,2.1364289 2.4865894,2.6288096 2.4865894,3.2348193 M 18.424492,22.506882 C 18.424492,23.913856000000003 19.565998,25.055363 20.972973,25.055363 L 23.155109,25.055363 C 23.555079,25.407549 24.078933,25.621692 24.654111999999998,25.621692 C 25.229287999999997,25.621692 25.753144,25.407549 26.153114,25.055363 L 26.636263,25.055363 C 27.731756,25.055363 28.618415,24.168703 28.618415,23.073211999999998 C 28.618415,21.977719999999998 27.731755999999997,21.09106 26.636263,21.09106 C 26.446898,21.09106 26.264611,21.11761 26.091171,21.16716 C 25.712439,20.448629999999998 24.956743,19.958401 24.087782,19.958401 C 23.510835,19.958401 22.983442,20.174314 22.581701000000002,20.530039 C 22.142795000000003,20.172545 21.583547000000003,19.958401 20.972973000000003,19.958401 C 19.565998000000004,19.958401 18.424492000000004,21.099908 18.424492000000004,22.506881999999997 L 18.424492,22.506882 M 28.759998000000003,26.471185000000002 L 22.813543000000003,26.471185000000002 C 22.578161,26.471185000000002 22.388796000000003,26.660551 22.388796000000003,26.895933000000003 C 22.388796000000003,27.131314000000003 22.578161,27.320680000000003 22.813543000000003,27.320680000000003 L 28.759998000000003,27.320680000000003 C 28.995379000000003,27.320680000000003 29.184744000000002,27.131314000000003 29.184744000000002,26.895933000000003 C 29.184744000000002,26.660551 28.995379000000003,26.471185000000002 28.759998000000003,26.471185000000002 M 27.627340000000004,28.170173000000002 L 25.645187000000004,28.170173000000002 C 25.409806000000003,28.170173000000002 25.220440000000004,28.359539 25.220440000000004,28.594920000000002 C 25.220440000000004,28.830301000000002 25.409806000000003,29.019666 25.645187000000004,29.019666 L 27.627340000000004,29.019666 C 27.862721000000004,29.019666 28.052086000000003,28.830301000000002 28.052086000000003,28.594920000000002 C 28.052086000000003,28.359539 27.862721000000004,28.170173000000002 27.627340000000004,28.170173000000002 M 24.229366000000002,28.170173000000002 L 18.28291,28.170173000000002 C 18.047529,28.170173000000002 17.858163,28.359539 17.858163,28.594920000000002 C 17.858163,28.830301000000002 18.047529,29.019666 18.28291,29.019666 L 24.229366000000002,29.019666 C 24.464745,29.019666 24.654112,28.830301000000002 24.654112,28.594920000000002 C 24.654112,28.359539 24.464745,28.170173000000002 24.229366000000002,28.170173000000002 M 21.822466000000002,26.895933000000003 C 21.822466000000002,26.660551 21.633099,26.471185000000002 21.397720000000003,26.471185000000002 L 19.557150000000004,26.471185000000002 C 19.321769000000003,26.471185000000002 19.132404000000005,26.660551 19.132404000000005,26.895933000000003 C 19.132404000000005,27.131314000000003 19.321769000000003,27.320680000000003 19.557150000000004,27.320680000000003 L 21.397720000000003,27.320680000000003 C 21.633099,27.320680000000003 21.822466000000002,27.131314000000003 21.822466000000002,26.895933000000003 "], iconName: "olympus-cursors-smoke-red" as IconName, prefix: "fas" as IconPrefix} export const olCursorsSmokeWhite: IconDefinition = { icon: [ 32.0, 32.0, [], "","M 2.4865894,3.2348193 L 2.4865894,20.790103 C 2.4865894,21.367703 2.9552974,21.831678999999998 3.5281650000000004,21.831678999999998 C 3.8264333000000006,21.831678999999998 4.115235500000001,21.703846999999996 4.314081000000001,21.476595999999997 L 8.2247243,17.002553999999996 L 10.97543,22.508701999999996 C 11.349452,23.256742999999997 12.258462999999999,23.559743999999995 13.006504,23.185724999999994 C 13.754545,22.811702999999994 14.057546,21.902691999999995 13.683527999999999,21.154651999999995 L 10.999101999999999,15.771601999999994 L 16.59047,15.771601999999994 C 17.168071,15.771601999999994 17.63678,15.302890999999994 17.63678,14.725289999999994 C 17.63678,14.427021999999994 17.508951000000003,14.142955999999995 17.286430000000003,13.944110999999994 L 4.314081,2.4157613 C 4.1105025,2.2358517 3.8548429,2.1364289 3.5849798,2.1364289 C 2.9789702,2.1364289 2.4865894,2.6288096 2.4865894,3.2348193 M 18.424492,22.506882 C 18.424492,23.913856000000003 19.565998,25.055363 20.972973,25.055363 L 23.155109,25.055363 C 23.555079,25.407549 24.078933,25.621692 24.654111999999998,25.621692 C 25.229287999999997,25.621692 25.753144,25.407549 26.153114,25.055363 L 26.636263,25.055363 C 27.731756,25.055363 28.618415,24.168703 28.618415,23.073211999999998 C 28.618415,21.977719999999998 27.731755999999997,21.09106 26.636263,21.09106 C 26.446898,21.09106 26.264611,21.11761 26.091171,21.16716 C 25.712439,20.448629999999998 24.956743,19.958401 24.087782,19.958401 C 23.510835,19.958401 22.983442,20.174314 22.581701000000002,20.530039 C 22.142795000000003,20.172545 21.583547000000003,19.958401 20.972973000000003,19.958401 C 19.565998000000004,19.958401 18.424492000000004,21.099908 18.424492000000004,22.506881999999997 L 18.424492,22.506882 M 28.759998000000003,26.471185000000002 L 22.813543000000003,26.471185000000002 C 22.578161,26.471185000000002 22.388796000000003,26.660551 22.388796000000003,26.895933000000003 C 22.388796000000003,27.131314000000003 22.578161,27.320680000000003 22.813543000000003,27.320680000000003 L 28.759998000000003,27.320680000000003 C 28.995379000000003,27.320680000000003 29.184744000000002,27.131314000000003 29.184744000000002,26.895933000000003 C 29.184744000000002,26.660551 28.995379000000003,26.471185000000002 28.759998000000003,26.471185000000002 M 27.627340000000004,28.170173000000002 L 25.645187000000004,28.170173000000002 C 25.409806000000003,28.170173000000002 25.220440000000004,28.359539 25.220440000000004,28.594920000000002 C 25.220440000000004,28.830301000000002 25.409806000000003,29.019666 25.645187000000004,29.019666 L 27.627340000000004,29.019666 C 27.862721000000004,29.019666 28.052086000000003,28.830301000000002 28.052086000000003,28.594920000000002 C 28.052086000000003,28.359539 27.862721000000004,28.170173000000002 27.627340000000004,28.170173000000002 M 24.229366000000002,28.170173000000002 L 18.28291,28.170173000000002 C 18.047529,28.170173000000002 17.858163,28.359539 17.858163,28.594920000000002 C 17.858163,28.830301000000002 18.047529,29.019666 18.28291,29.019666 L 24.229366000000002,29.019666 C 24.464745,29.019666 24.654112,28.830301000000002 24.654112,28.594920000000002 C 24.654112,28.359539 24.464745,28.170173000000002 24.229366000000002,28.170173000000002 M 21.822466000000002,26.895933000000003 C 21.822466000000002,26.660551 21.633099,26.471185000000002 21.397720000000003,26.471185000000002 L 19.557150000000004,26.471185000000002 C 19.321769000000003,26.471185000000002 19.132404000000005,26.660551 19.132404000000005,26.895933000000003 C 19.132404000000005,27.131314000000003 19.321769000000003,27.320680000000003 19.557150000000004,27.320680000000003 L 21.397720000000003,27.320680000000003 C 21.633099,27.320680000000003 21.822466000000002,27.131314000000003 21.822466000000002,26.895933000000003 "], iconName: "olympus-cursors-smoke-white" as IconName, prefix: "fas" as IconPrefix} +export const olIconsApc: IconDefinition = { icon: [ 19.0, 13.95722, [], "","M 16.099106,6.9236751 L 3.1968256,6.9236751 C 2.2480056,6.9236751 1.4761256,7.695575099999999 1.4761256,8.6443753 C 1.4761256,8.6705753 1.4769056,8.6965753 1.4781356,8.7225753 C 1.4785056,8.730875300000001 1.4789856000000001,8.739075300000001 1.4794656000000002,8.747375300000002 C 1.4805456000000001,8.765675300000002 1.4819556000000003,8.783875300000002 1.4836256,8.802075300000002 C 1.4844056,8.810875300000003 1.4850756,8.819575300000002 1.4860356000000001,8.828275300000001 C 1.4885656,8.8514753 1.4914556,8.874675300000002 1.4949056,8.897675300000001 C 1.4966556,8.909275300000001 1.4987256,8.9207753 1.5006956,8.932375300000002 C 1.5028456000000001,8.944875300000001 1.5050056,8.957375300000002 1.5074156,8.969775300000002 C 1.5100156,8.983275300000003 1.5127156000000002,8.996675300000001 1.5156156,9.010075300000002 C 1.5177256000000001,9.019775300000003 1.5200356000000002,9.029375300000002 1.5223356000000001,9.039075300000002 C 1.5291256000000002,9.067975300000002 1.5366156000000002,9.096475300000002 1.5448556000000002,9.124775300000001 C 1.5462656000000001,9.1296753 1.5476056000000002,9.134575300000002 1.5490556000000002,9.1394753 C 1.5536556000000001,9.1548753 1.5586256000000003,9.1699753 1.5635956000000002,9.185075300000001 C 1.5660856000000003,9.192575300000001 1.5686456000000002,9.200075300000002 1.5712056,9.207575300000002 C 1.5763956000000001,9.222375300000001 1.5816356,9.237275300000002 1.5871956,9.251975300000002 C 1.5896456,9.258475300000002 1.5922856,9.264775300000002 1.5947656000000001,9.271175300000001 C 1.6046056000000002,9.296275300000001 1.6149956,9.3210753 1.6259456,9.345575300000002 C 1.6302856000000001,9.355275300000002 1.6345856,9.364975300000001 1.6391156,9.374675300000002 C 1.6444956,9.385975300000002 1.6499856,9.397275300000002 1.6555956,9.4085753 C 1.6616456,9.4207753 1.6678756000000001,9.432775300000001 1.6742256,9.444875300000001 C 1.6788956,9.453775300000002 1.6835756,9.4627753 1.6883956,9.471575300000001 C 1.6999056,9.492575300000002 1.7118156,9.513275300000002 1.7241656,9.533775300000002 C 1.7260656,9.536875300000002 1.7280256,9.539875300000002 1.7299556,9.542975300000002 C 1.7419456,9.562475300000003 1.7543056000000001,9.581675300000002 1.7670356,9.600775300000002 C 1.7692956,9.604075300000002 1.7714856,9.607375300000003 1.7737456,9.610775300000002 C 1.9408856,9.856775300000002 2.1715956,10.060075000000001 2.4490656,10.194075000000002 C 2.4524056,10.195675000000001 2.4558155999999998,10.197175000000001 2.4591956,10.198775000000001 C 2.4724056,10.204975000000001 2.4855856000000003,10.211375000000002 2.4990156000000003,10.217375 L 2.5102556000000003,10.221875 C 2.5418356,10.235675 2.5737156000000003,10.248875 2.6062656000000004,10.260775 L 5.2253056,11.321575000000001 C 5.2293056,11.323375 5.233505600000001,11.324775 5.2375056,11.326575000000002 C 5.2546056000000005,11.333875000000003 5.272105600000001,11.340575000000001 5.2893056000000005,11.347475000000001 C 5.3073056,11.354575 5.3251056000000005,11.362075 5.3432056,11.368775000000001 C 5.3611056,11.375375000000002 5.3793056,11.381375000000002 5.3975056,11.387575000000002 C 5.4157056,11.393775000000002 5.4338055999999995,11.400375000000002 5.4522056,11.406175000000001 C 5.4678056,11.411075 5.4838056,11.415275000000001 5.4995056,11.419775000000001 C 5.5208056,11.425975000000001 5.5420056,11.432475000000002 5.5634056,11.438075000000001 C 5.5737056,11.440675 5.5843056,11.442875 5.5947056,11.445375000000002 C 5.6217056,11.451975000000003 5.6487056,11.458575000000002 5.6760056,11.464175000000003 C 5.6769055999999996,11.464375000000002 5.6778056,11.464475000000002 5.6786056,11.464575000000004 C 5.8228056,11.494075000000004 5.9700056,11.509175000000004 6.1193056,11.510375000000003 C 6.125505599999999,11.510375000000003 6.131605599999999,11.510775000000004 6.137705599999999,11.510775000000004 L 6.137805599999999,11.510775000000004 L 13.157805999999999,11.510775000000004 C 13.158306,11.510775000000004 13.158705999999999,11.510775000000004 13.159106,11.510775000000004 C 13.159506,11.510775000000004 13.160006,11.510775000000004 13.160406,11.510775000000004 C 13.488206,11.510775000000004 13.799806,11.441275000000005 14.082106,11.316775000000003 L 16.716606,10.249975000000003 C 16.737406,10.241975000000004 16.758205999999998,10.233775000000003 16.778606,10.224875000000003 L 16.780106,10.224275000000002 L 16.796506,10.217375000000002 C 16.809906,10.211375000000002 16.823106,10.204975000000003 16.836306,10.198775000000003 C 16.839706,10.197175000000003 16.843106,10.195575000000003 16.846506,10.194075000000003 C 17.123906,10.060075000000003 17.354706,9.856775300000002 17.521806,9.610775300000004 C 17.524006,9.607475300000004 17.526306,9.604075300000003 17.528506,9.600775300000004 C 17.541206,9.581675300000004 17.553606,9.562475300000004 17.565606,9.542975300000004 C 17.567505999999998,9.539875300000004 17.569506,9.536775300000004 17.571306,9.533775300000004 C 17.583706,9.513275300000004 17.595606,9.492475300000004 17.607206,9.471575300000003 C 17.612006,9.462675300000003 17.616706,9.453775300000004 17.621306,9.444875300000003 C 17.627706,9.432775300000003 17.633906,9.420775300000003 17.640006,9.408575300000003 C 17.645606,9.397275300000002 17.651106,9.386075300000002 17.656406,9.374675300000003 C 17.660906,9.364975300000003 17.665306,9.355275300000004 17.669606,9.345575300000004 C 17.680606,9.321075300000004 17.691006,9.296275300000003 17.700806,9.271175300000003 C 17.703306,9.264775300000004 17.706006,9.258375300000003 17.708406,9.251975300000003 C 17.714006,9.237275300000004 17.719206,9.222375300000003 17.724406,9.207475300000004 C 17.727006,9.200075300000004 17.729505999999997,9.192575300000003 17.732006,9.185075300000005 C 17.737005999999997,9.169875300000005 17.742006,9.154775300000004 17.746506,9.139475300000004 C 17.748006,9.134575300000005 17.749306,9.129575300000004 17.750706,9.124675300000005 C 17.758906,9.096475300000005 17.766506,9.067875300000004 17.773306,9.039075300000006 C 17.775606000000003,9.029375300000005 17.777806,9.019775300000006 17.780006,9.009975300000006 C 17.782906,8.996675300000007 17.785606,8.983275300000006 17.788206,8.969775300000006 C 17.790606,8.957275300000006 17.792706,8.944775300000005 17.794905999999997,8.932275300000006 C 17.796905999999996,8.920775300000006 17.798906,8.909275300000006 17.800705999999998,8.897675300000007 C 17.804105999999997,8.874575300000007 17.807005999999998,8.851475300000006 17.809606,8.828175300000007 C 17.810506,8.819475300000008 17.811106,8.810775300000007 17.812006,8.802075300000007 C 17.813706,8.783875300000007 17.815006,8.765675300000007 17.816106,8.747275300000007 C 17.816606,8.739075300000007 17.817106000000003,8.730875300000006 17.817506,8.722575300000008 C 17.818606000000003,8.696575300000008 17.819506,8.670475300000009 17.819506,8.644375300000007 C 17.819806,7.695575100000007 17.047906,6.923675100000008 16.099106,6.923675100000008 L 16.099106,6.9236751 M 3.1968256,9.2893753 C 3.1139956,9.2893753 3.0349855999999997,9.2731753 2.9621756,9.2445753 L 2.9380156,9.234775299999999 C 2.9230656,9.228175299999998 2.9083356,9.221175299999999 2.8940456,9.213475299999999 C 2.8923356,9.212675299999999 2.8905156,9.211875299999999 2.8888156,9.2108753 C 2.8720056,9.2016753 2.8556756,9.1916753 2.8397956,9.1810753 C 2.8365656,9.1788753 2.8334456,9.1766753 2.8302556,9.1743753 C 2.8173356000000003,9.1653753 2.8047556,9.1560753 2.7925856000000002,9.1461753 C 2.7893956,9.1436753 2.7861656000000004,9.141075299999999 2.7830556000000004,9.1384753 C 2.7539956000000005,9.1141753 2.7271656,9.0872753 2.7028156000000005,9.0581753 C 2.6997756000000006,9.0545753 2.6968856000000003,9.0508753 2.6939156000000004,9.047175300000001 C 2.6850456000000005,9.036175300000002 2.6765856000000006,9.024775300000002 2.6684156000000003,9.0131753 C 2.6652256000000003,9.0086753 2.6619956000000005,9.0040753 2.6589156000000003,8.9994753 C 2.6490456000000004,8.9845753 2.6396256000000005,8.969375300000001 2.6310156000000005,8.9535753 C 2.6288256000000003,8.949675300000001 2.6270056000000004,8.9454753 2.6248956000000003,8.9414753 C 2.6185456000000005,8.9292753 2.6124956000000004,8.916875300000001 2.6069656000000005,8.9042753 C 2.6039656000000004,8.8974753 2.6011356000000005,8.8906753 2.5983956000000004,8.8837753 C 2.5939456000000005,8.8725753 2.5897856000000004,8.861275299999999 2.5859256000000004,8.8497753 C 2.5837756000000005,8.8434753 2.5814756000000005,8.8372753 2.5795456000000003,8.830775299999999 C 2.5744256000000005,8.8138753 2.5700056000000004,8.796775299999998 2.5662556000000003,8.779275299999998 C 2.5650656000000005,8.7735753 2.5641456000000002,8.767775299999998 2.5631056,8.762075299999998 C 2.5605456,8.748375299999998 2.5584256,8.734575299999998 2.5567556000000002,8.720675299999998 C 2.5560556,8.714675299999998 2.5553456000000003,8.708675299999998 2.5547956000000003,8.702775299999999 C 2.5530456000000004,8.6835753 2.5518256000000004,8.664175299999998 2.5518256000000004,8.6444753 C 2.5518256000000004,8.288875299999999 2.8411256000000003,7.9994751 3.1967856,7.9994751 C 3.5524456,7.9994751 3.8417056,8.2887753 3.8417056,8.6444753 C 3.8417056,9.0001753 3.5524756,9.2893753 3.1968256,9.2893753 M 6.1379056,10.434975 C 6.1170056,10.434975 6.0960056,10.434474999999999 6.0753056,10.433475 C 6.0146056,10.430375 5.9551056,10.422775 5.8971056,10.411075 C 5.8956056,10.410775000000001 5.8940056,10.410475 5.8925056,10.410175 C 5.8769056,10.406975000000001 5.8615056,10.403275 5.8460056,10.399475 C 5.841605599999999,10.398375000000001 5.8371056,10.397475 5.8327056,10.396275000000001 C 5.819505599999999,10.392875000000002 5.8064056,10.388975 5.7933056,10.385075 C 5.7867056,10.383175000000001 5.7801056,10.381375 5.7735056,10.379275 C 5.7620056,10.375675 5.7507056,10.371675 5.7394056,10.367675 C 5.7314056,10.364875 5.723305600000001,10.362275 5.715305600000001,10.359275 C 5.7047056000000005,10.355275 5.694205600000001,10.350975 5.683605600000001,10.346775000000001 C 5.675305600000001,10.343375000000002 5.6670056,10.340075 5.658705600000001,10.336575000000002 C 5.224805600000001,10.150075000000001 4.920105600000001,9.718675300000001 4.920105600000001,9.217175300000001 C 4.920105600000001,8.545675300000001 5.466405600000002,7.999375100000001 6.137905600000002,7.999375100000001 C 6.809405600000002,7.999375100000001 7.355705600000002,8.545675300000001 7.355705600000002,9.217175300000001 C 7.355705600000002,9.888675300000001 6.809405600000002,10.434975000000001 6.137905600000002,10.434975000000001 L 6.1379056,10.434975 M 9.6493056,10.434975 C 8.9778056,10.434975 8.4315056,9.8886753 8.4315056,9.217275299999999 C 8.4315056,8.545775299999999 8.9778056,7.999475099999999 9.6493056,7.999475099999999 C 10.320806,7.999475099999999 10.867006,8.545775299999999 10.867006,9.217275299999999 C 10.867006,9.8886753 10.320806,10.434975 9.6493056,10.434975 M 13.666906,10.324375 L 13.660206,10.327075 L 13.646106000000001,10.333075000000001 C 13.492106000000001,10.400575000000002 13.328306000000001,10.434775 13.159406,10.434975000000001 C 12.488506000000001,10.434375000000001 11.942906,9.888375300000002 11.942906,9.2172753 C 11.942906,8.5457753 12.489206000000001,7.999475100000001 13.160706000000001,7.999475100000001 C 13.832206000000001,7.999475100000001 14.378406000000002,8.5457753 14.378406000000002,9.2172753 C 14.378406000000002,9.7080753 14.086206000000002,10.131775000000001 13.666906,10.324375 M 16.741106000000002,8.7026753 C 16.740606000000003,8.7086753 16.739906,8.7145753 16.739206000000003,8.720575299999998 C 16.737506000000003,8.734475299999998 16.735406000000005,8.748275299999998 16.732806000000004,8.761975299999998 C 16.731706000000003,8.767675299999997 16.730906000000004,8.773575299999997 16.729606000000004,8.779275299999998 C 16.725906000000005,8.796675299999999 16.721506000000005,8.813775299999998 16.716406000000003,8.830675299999998 C 16.714406000000004,8.837175299999998 16.712106000000002,8.843375299999998 16.710006000000003,8.849775299999997 C 16.706106000000002,8.861275299999997 16.702006000000004,8.872575299999998 16.697506000000004,8.883675299999997 C 16.694806000000003,8.890575299999997 16.691906000000003,8.897375299999997 16.689006000000003,8.904175299999997 C 16.683406,8.916775299999998 16.677306,8.929275299999997 16.671006000000002,8.941375299999997 C 16.668906000000003,8.945375299999997 16.667106,8.949475299999998 16.664906000000002,8.953575299999997 C 16.656306,8.969275299999998 16.646906,8.984475299999998 16.637106000000003,8.999375299999997 C 16.634006000000003,9.004075299999997 16.630706000000004,9.008575299999997 16.627506000000004,9.013075299999997 C 16.619406000000005,9.024775299999996 16.611006000000003,9.036075299999997 16.602106000000003,9.047075299999998 C 16.599106000000003,9.050775299999998 16.596206000000002,9.054475299999998 16.593206000000002,9.058175299999998 C 16.568806000000002,9.087175299999998 16.541906,9.113975299999998 16.512906,9.138375299999998 C 16.509806,9.141075299999999 16.506606,9.143575299999998 16.503406000000002,9.146075299999998 C 16.491206000000002,9.155975299999998 16.478606000000003,9.165375299999997 16.465806,9.174275299999998 C 16.462606,9.176475299999998 16.459406,9.178775299999998 16.456206,9.180975299999998 C 16.440306000000003,9.191575299999998 16.424006000000002,9.201575299999998 16.407206000000002,9.210775299999998 C 16.405506000000003,9.211775299999998 16.403706000000003,9.212575299999997 16.402006000000004,9.213475299999999 C 16.387706000000005,9.221075299999999 16.372906000000004,9.228075299999999 16.358006000000003,9.2346753 L 16.333806000000003,9.2444753 C 16.261006000000002,9.2730753 16.182006,9.2893753 16.099206000000002,9.2893753 C 15.743606000000002,9.2893753 15.454306000000003,8.9999753 15.454306000000003,8.6443753 C 15.454306000000003,8.2886753 15.743606000000003,7.9993751 16.099206000000002,7.9993751 C 16.454806,7.9993751 16.744206000000002,8.2886753 16.744206000000002,8.6443753 C 16.744106000000002,8.6640753 16.742806,8.6834753 16.741106000000002,8.7026753 M 16.099205,5.4931122 L 15.841605000000001,5.4931122 L 13.383905000000002,3.1461121999999997 L 11.987305000000003,3.1461121999999997 C 10.246327000000003,3.0913752 5.878396800000003,3.0998892 4.430105600000003,3.1461121999999997 L 2.7125656000000027,3.1461121999999997 L 2.7125656000000027,5.5232122 C 1.7037456000000026,5.6489122 0.7876956300000026,6.1645122 0.14800563000000277,6.9812122 L 0.9948756300000028,7.6446122 C 1.5303656000000028,6.9609122 2.3329356000000026,6.5688122 3.196885600000003,6.5688122 L 16.099105,6.5688122 C 16.963105000000002,6.5688122 17.765605,6.9609122 18.301105,7.6446122 L 19.148005,6.9812122 C 18.407305,6.035512199999999 17.296005,5.4931122 16.099205,5.4931122 "], iconName: "olympus-icons-apc" as IconName, prefix: "fas" as IconPrefix} +export const olIconsArtillery: IconDefinition = { icon: [ 50.0, 50.0, [], "","M 25.042626,4.9834433 C 26.429509999999997,4.9834433 27.549965999999998,6.1039361 27.549965999999998,7.4907825 L 27.549965999999998,8.3056781 C 34.89187,9.3948151 40.690261,15.20096 41.779243,22.534956 L 42.594139,22.534956 C 43.981024999999995,22.534956 45.101479,23.655449 45.101479,25.042296 C 45.101479,26.429144 43.980985999999994,27.549636 42.594139,27.549636 L 41.779243,27.549636 C 40.690108,34.89154 34.883963,40.689931 27.549966,41.778913 L 27.549966,42.593809 C 27.549966,43.980695 26.429474000000003,45.101149 25.042626000000002,45.101149 C 23.655779000000003,45.101149 22.535286000000003,43.980655999999996 22.535286000000003,42.593809 L 22.535286000000003,41.778913 C 15.193383,40.689778 9.3949904,34.89154 8.3060081,27.549636 L 7.4911125,27.549636 C 6.1042274,27.549636 4.983773299999999,26.429144 4.983773299999999,25.042296 C 4.983773299999999,23.655449 6.104266099999999,22.534956 7.4911125,22.534956 L 8.3060081,22.534956 C 9.3951451,15.193053 15.193383,9.3946604 22.535286,8.3056781 L 22.535286,7.4907825 C 22.535286,6.1038974 23.655779,4.983443299999999 25.042626,4.983443299999999 L 25.042626,4.9834433 M 13.398981,27.549886 C 14.378428,32.117942 17.974944,35.706743 22.535286,36.686191 L 22.535286,35.072058 C 22.535286,33.685173 23.655779,32.56472 25.042626,32.56472 C 26.429474,32.56472 27.549965999999998,33.685212 27.549965999999998,35.072058 L 27.549965999999998,36.686191 C 32.118021999999996,35.706743 35.706821999999995,32.110227 36.686268999999996,27.549886 L 35.072137999999995,27.549886 C 33.685252999999996,27.549886 32.5648,26.429394000000002 32.5648,25.042547 C 32.5648,23.6557 33.685292,22.535207 35.072137999999995,22.535207 L 36.686268999999996,22.535207 C 35.706822,17.96715 32.118214,14.378349 27.549966,13.398902 L 27.549966,15.013033 C 27.549966,16.399918 26.429474000000003,17.520374 25.042626000000002,17.520374 C 23.655779000000003,17.520374 22.535286000000003,16.399881 22.535286000000003,15.013033 L 22.535286000000003,13.398902 C 17.96723,14.378349 14.378428000000003,17.966957999999998 13.398981000000003,22.535207 L 15.013113000000002,22.535207 C 16.399998000000004,22.535207 17.520453000000003,23.6557 17.520453000000003,25.042547 C 17.520453000000003,26.429394 16.399960000000004,27.549886 15.013113000000004,27.549886 L 13.398981,27.549886 M 25.042626,22.535207 A 2.5073398,2.5073398 0.0 1,1 25.042626,27.549886 A 2.5073398,2.5073398 0.0 1,1 25.042626,22.535207 "], iconName: "olympus-icons-artillery" as IconName, prefix: "fas" as IconPrefix} +export const olIconsEwr: IconDefinition = { icon: [ 50.0, 50.0, [], "","M 17.740075,30.890065 L 31.982602,22.799923 L 22.687533,17.179659 L 36.603086,8.4392652 M 29.114015,6.2180572 L 37.070065,8.219946199999999 L 35.280349,15.329438999999999 M 42.092355,39.371026 A 24.331261,24.3619 0.0 0,1 14.046786,36.357651 A 24.331261,24.3619 0.0 0,1 7.6896937,8.8421626 "], iconName: "olympus-icons-ewr" as IconName, prefix: "fas" as IconPrefix} +export const olIconsInfantry: IconDefinition = { icon: [ 50.0, 50.0, [], "","M 23.94212,20.425236 C 25.757932,20.425236 27.502233,20.932815 29.003538,21.847844000000002 L 29.003538,43.301568 L 15.277723,43.301568 L 15.277723,30.841297 L 11.446044,37.318036 C 10.64539,38.67632 8.8867161,39.126686 7.5283812,38.326033 C 6.1700967,37.525354 5.7197307,35.766705 6.5204095,34.40837 L 11.96787,25.200589 C 13.719332,22.241098 16.900438,20.42511 20.339015,20.42511 L 23.94212,20.425236 M 16.421478,12.418448000000001 A 5.7190265,5.7190265 0.0 1,1 27.859531,12.418448000000001 A 5.7190265,5.7190265 0.0 1,1 16.421478,12.418448000000001 M 37.010073,6.699422 C 37.639164,6.699422 38.153878999999996,7.2141369 38.153878999999996,7.843227300000001 L 38.153878999999996,16.157387 C 38.840182,16.55059 39.297684,17.294056 39.297684,18.137601 L 39.297684,25.951241 L 40.441489,25.57236 L 40.441489,21.568966 C 40.441489,20.939875 40.956204,20.425161 41.585294,20.425161 L 42.7291,20.425161 C 43.35819,20.425161 43.872905,20.939875 43.872905,21.568966 L 43.872905,27.609735999999998 C 43.872905,28.102992999999998 43.558372000000006,28.539087 43.093684,28.696354 L 39.297558,29.954534 L 39.297558,31.863263 L 42.729074000000004,31.863263 C 43.35816500000001,31.863263 43.87288,32.377978 43.87288,33.007069 L 43.87288,34.150874 C 43.87288,34.779964 43.358165,35.294679 42.729074000000004,35.294679 L 39.583497,35.294679 L 41.22772,41.878834000000005 C 41.406444,42.60086700000001 40.86311,43.301442 40.119644,43.301442 L 35.866117,43.301442 C 35.237027000000005,43.301442 34.722312,42.786727 34.722312,42.157637 L 34.722312,35.294856 L 33.578506000000004,35.294856 C 32.313165000000005,35.294856 31.290896000000004,34.272587 31.290896000000004,33.007245000000005 L 31.290896000000004,22.712948 C 31.290896000000004,21.447606 32.313165000000005,20.425337 33.578506000000004,20.425337 L 33.578506000000004,18.137701 C 33.578506000000004,17.294157 34.03603400000001,16.550666 34.722312,16.157488 L 34.722312,8.9873351 C 34.093221,8.9873351 33.578506000000004,8.4726202 33.578506000000004,7.843529899999999 C 33.578506000000004,7.2144143 34.09322100000001,6.6997246 34.722312,6.6997246 L 35.866117,6.6997246 L 37.010073,6.699422 "], iconName: "olympus-icons-infantry" as IconName, prefix: "fas" as IconPrefix} +export const olIconsLauncher: IconDefinition = { icon: [ 50.0, 50.0, [], "","M 13.568658,40.419833 A 15.070933,15.109776 0.0 0,1 25.113663,35.022434 A 15.070933,15.109776 0.0 0,1 36.658667,40.419833 M 24.802923,34.634011 L 24.802923,7.211128 M 21.074033,13.348261 L 24.69735,7.07249 L 28.214275,13.163982 "], iconName: "olympus-icons-launcher" as IconName, prefix: "fas" as IconPrefix} +export const olIconsRadar: IconDefinition = { icon: [ 50.0, 50.0, [], "","M 17.740075,30.890065 L 31.982602,22.799923 L 22.687533,17.179659 L 36.603086,8.4392652 M 29.114015,6.2180572 L 37.070065,8.219946199999999 L 35.280349,15.329438999999999 M 42.092355,39.371026 A 24.331261,24.3619 0.0 0,1 14.046786,36.357651 A 24.331261,24.3619 0.0 0,1 7.6896937,8.8421626 "], iconName: "olympus-icons-radar" as IconName, prefix: "fas" as IconPrefix} +export const olIconsSam: IconDefinition = { icon: [ 50.0, 50.0, [], "","M 45.7733,41.3423 L 25.9481,7.63951 C 25.5228,6.91648 24.4772,6.91646 24.0519,7.63951 L 4.22671,41.3423 C 3.79536,42.0756 4.32409,43.0 5.17484,43.0 L 44.8252,43.0 C 45.6759,43.0 46.2046,42.0756 45.7733,41.3423 M 6.74842,41.0 L 25.0,9.97231 L 43.2516,41.0 L 6.74842,41.0 "], iconName: "olympus-icons-sam" as IconName, prefix: "fas" as IconPrefix} +export const olIconsTactical: IconDefinition = { icon: [ 50.0, 50.0, [], "","M 15.117444,13.661846 L 12.982337000000001,19.764736 L 37.016866,19.764736 L 34.881759,13.661845999999999 C 34.513654,12.61474 33.523796,11.911194 32.41121,11.911194 L 17.588147,11.911194 C 16.4756,11.911194 15.485740999999999,12.61474 15.117598,13.661846 L 15.117444,13.661846 M 7.296757600000001,20.157155 L 10.176308,11.935585999999999 C 11.280699,8.7860743 14.250159,6.675627699999999 17.588032000000002,6.675627699999999 L 32.411095,6.675627699999999 C 35.748736,6.675627699999999 38.718274,8.786228199999998 39.822819,11.935585999999999 L 42.702368,20.157155 C 44.600255,20.942456 45.941867,22.815835 45.941867,25.000072 L 45.941867,40.706848 C 45.941867,42.154798 44.772034000000005,43.324592 43.324084,43.324592 L 40.706339,43.324592 C 39.258389,43.324592 38.088556,42.154759000000006 38.088556,40.706848 L 38.088556,36.780346 L 11.910724,36.780346 L 11.910724,40.706848 C 11.910724,42.154798 10.740891,43.324592 9.2929409,43.324592 L 6.6751962,43.324592 C 5.2272458,43.324592 4.057413,42.154759000000006 4.057413,40.706848 L 4.057413,25.000072 C 4.057413,22.815873 5.3990255000000005,20.942379 7.2969115,20.157155 L 7.296757600000001,20.157155 M 14.52843,27.617739 A 2.6178601,2.6178601 0.0 1,0 9.2927101,27.617739 A 2.6178601,2.6178601 0.0 1,0 14.52843,27.617739 M 38.088594,30.235522 A 2.6178601,2.6178601 0.0 1,0 38.088594,24.999802 A 2.6178601,2.6178601 0.0 1,0 38.088594,30.235522 "], iconName: "olympus-icons-tactical" as IconName, prefix: "fas" as IconPrefix} +export const olIconsTank: IconDefinition = { icon: [ 19.0, 13.95722, [], "","M 15.961766,8.7777708 L 3.0594852,8.7777708 C 2.1106652,8.7777708 1.3387852000000002,9.549670800000001 1.3387852000000002,10.498471 C 1.3387852000000002,10.524671 1.3395652000000002,10.550671 1.3407952000000003,10.576671000000001 C 1.3411652000000003,10.584971000000001 1.3416452000000003,10.593171000000002 1.3421252000000004,10.601471000000002 C 1.3432052000000003,10.619771000000002 1.3446152000000005,10.637971000000002 1.3462852000000003,10.656171000000002 C 1.3470652000000003,10.664971000000003 1.3477352000000002,10.673671000000002 1.3486952000000003,10.682371000000002 C 1.3512252000000002,10.705571 1.3541152000000003,10.728771000000002 1.3575652000000002,10.751771000000002 C 1.3593152000000002,10.763371000000001 1.3613852000000002,10.774871000000001 1.3633552000000002,10.786471000000002 C 1.3655052000000003,10.798971000000002 1.3676652000000002,10.811471000000003 1.3700752000000003,10.823871000000002 C 1.3726752000000002,10.837371000000003 1.3753752000000004,10.850771000000002 1.3782752000000003,10.864171000000002 C 1.3803852000000003,10.873871000000003 1.3826952000000003,10.883471000000002 1.3849952000000003,10.893171000000002 C 1.3917852000000004,10.922071000000003 1.3992752000000004,10.950571000000002 1.4075152000000004,10.978871000000002 C 1.4089252000000003,10.983771 1.4102652000000004,10.988671000000002 1.4117152000000004,10.993571000000001 C 1.4163152000000003,11.008971 1.4212852000000005,11.024071000000001 1.4262552000000004,11.039171000000001 C 1.4287452000000005,11.046671000000002 1.4313052000000004,11.054171000000002 1.4338652000000003,11.061671000000002 C 1.4390552000000003,11.076471000000002 1.4442952000000002,11.091371000000002 1.4498552000000002,11.106071000000002 C 1.4523052000000003,11.112571000000003 1.4549452000000003,11.118871000000002 1.4574252000000003,11.125271000000001 C 1.4672652000000004,11.150371000000002 1.4776552000000003,11.175171 1.4886052000000003,11.199671000000002 C 1.4929452000000003,11.209371000000003 1.4972452000000003,11.219071000000001 1.5017752000000002,11.228771000000002 C 1.5071552000000001,11.240071000000002 1.5126452000000001,11.251371000000002 1.5182552000000002,11.262671000000001 C 1.5243052000000001,11.274871000000001 1.5305352000000003,11.286871000000001 1.5368852000000002,11.298971000000002 C 1.5415552000000001,11.307871000000002 1.5462352000000001,11.316871 1.5510552000000002,11.325671000000002 C 1.5625652,11.346671000000002 1.5744752000000002,11.367371000000002 1.5868252000000003,11.387871000000002 C 1.5887252000000003,11.390971000000002 1.5906852000000002,11.393971000000002 1.5926152000000002,11.397071000000002 C 1.6046052000000002,11.416571000000003 1.6169652000000003,11.435771000000003 1.6296952000000002,11.454871000000002 C 1.6319552000000002,11.458171000000002 1.6341452000000003,11.461471000000003 1.6364052000000002,11.464871000000002 C 1.8035452000000003,11.710871000000003 2.0342552,11.914171000000001 2.3117252,12.048171000000002 C 2.3150652000000003,12.049771000000002 2.3184752,12.051271000000002 2.3218552000000003,12.052871000000001 C 2.3350652000000003,12.059071000000001 2.3482452000000005,12.065471000000002 2.3616752000000005,12.071471 L 2.3729152000000004,12.075971000000001 C 2.4044952000000004,12.089771 2.4363752000000005,12.102971 2.4689252000000006,12.114871 L 5.087965200000001,13.175671000000001 C 5.091965200000001,13.177471 5.0961652000000015,13.178871000000001 5.100165200000001,13.180671000000002 C 5.117265200000001,13.187971000000003 5.134765200000001,13.194671000000001 5.151965200000001,13.201571000000001 C 5.169965200000001,13.208671 5.187765200000001,13.216171000000001 5.205865200000001,13.222871000000001 C 5.223765200000001,13.229471000000002 5.241965200000001,13.235471000000002 5.2601652,13.241671000000002 C 5.2783652000000005,13.247871000000002 5.2964652,13.254471000000002 5.314865200000001,13.260271000000001 C 5.330465200000001,13.265171 5.346465200000001,13.269371000000001 5.362165200000001,13.273871000000002 C 5.383465200000001,13.280071000000001 5.404665200000001,13.286571000000002 5.426065200000001,13.292171000000002 C 5.436365200000001,13.294771 5.446965200000001,13.296971000000001 5.457365200000001,13.299471000000002 C 5.484365200000001,13.306071000000003 5.511365200000001,13.312671000000002 5.5386652000000005,13.318271000000003 C 5.5395652,13.318471000000002 5.540465200000001,13.318571000000002 5.541265200000001,13.318671000000004 C 5.6854652,13.348171000000004 5.832665200000001,13.363271000000005 5.9819652,13.364471000000004 C 5.9881652,13.364471000000004 5.9942652,13.364871000000004 6.0003652,13.364871000000004 L 6.0004652,13.364871000000004 L 13.020465999999999,13.364871000000004 C 13.020966,13.364871000000004 13.021365999999999,13.364871000000004 13.021766,13.364871000000004 C 13.022166,13.364871000000004 13.022666,13.364871000000004 13.023066,13.364871000000004 C 13.350866,13.364871000000004 13.662466,13.295371000000005 13.944766,13.170871000000004 L 16.579266,12.104071000000003 C 16.600066,12.096071000000004 16.620866,12.087871000000003 16.641266,12.078971000000003 L 16.642766,12.078371000000002 L 16.659166000000003,12.071471000000003 C 16.672566000000003,12.065471000000002 16.685766,12.059071000000003 16.698966000000002,12.052871000000003 C 16.702366,12.051271000000003 16.705766,12.049671000000004 16.709166000000003,12.048171000000004 C 16.986566000000003,11.914171000000003 17.217366000000002,11.710871000000003 17.384466000000003,11.464871000000004 C 17.386666,11.461571000000005 17.388966000000003,11.458171000000004 17.391166000000002,11.454871000000004 C 17.403866,11.435771000000004 17.416266,11.416571000000005 17.428266,11.397071000000004 C 17.430166,11.393971000000004 17.432166000000002,11.390871000000004 17.433966,11.387871000000004 C 17.446366,11.367371000000004 17.458266000000002,11.346571000000004 17.469866000000003,11.325671000000003 C 17.474666000000003,11.316771000000003 17.479366000000002,11.307871000000004 17.483966000000002,11.298971000000003 C 17.490366,11.286871000000003 17.496566,11.274871000000003 17.502666,11.262671000000003 C 17.508266000000003,11.251371000000002 17.513766,11.240171000000002 17.519066000000002,11.228771000000004 C 17.523566000000002,11.219071000000003 17.527966000000003,11.209371000000004 17.532266000000003,11.199671000000004 C 17.543266000000003,11.175171000000004 17.553666000000003,11.150371000000003 17.563466000000002,11.125271000000003 C 17.565966000000003,11.118871000000004 17.568666,11.112471000000003 17.571066000000002,11.106071000000004 C 17.576666000000003,11.091371000000004 17.581866,11.076471000000003 17.587066,11.061571000000004 C 17.589666,11.054171000000004 17.592166,11.046671000000003 17.594666,11.039171000000005 C 17.599666,11.023971000000005 17.604666,11.008871000000005 17.609166000000002,10.993571000000005 C 17.610666000000002,10.988671000000005 17.611966000000002,10.983671000000005 17.613366000000003,10.978771000000005 C 17.621566,10.950571000000005 17.629166,10.921971000000005 17.635966000000003,10.893171000000006 C 17.638266000000005,10.883471000000005 17.640466000000004,10.873871000000007 17.642666000000002,10.864071000000006 C 17.645566000000002,10.850771000000007 17.648266000000003,10.837371000000006 17.650866,10.823871000000006 C 17.653266000000002,10.811371000000007 17.655366,10.798871000000005 17.657566,10.786371000000006 C 17.659565999999998,10.774871000000006 17.661566,10.763371000000006 17.663366,10.751771000000007 C 17.666766,10.728671000000007 17.669666,10.705571000000006 17.672266,10.682271000000007 C 17.673166000000002,10.673571000000008 17.673766,10.664871000000007 17.674666000000002,10.656171000000008 C 17.676366,10.637971000000007 17.677666000000002,10.619771000000007 17.678766000000003,10.601371000000007 C 17.679266000000002,10.593171000000007 17.679766000000004,10.584971000000007 17.680166000000003,10.576671000000008 C 17.681266000000004,10.550671000000008 17.682166000000002,10.524571000000009 17.682166000000002,10.498471000000007 C 17.682466,9.549670800000008 16.910566000000003,8.777770800000008 15.961766000000003,8.777770800000008 L 15.961766,8.7777708 M 3.0594852,11.143471 C 2.9766552,11.143471 2.8976452,11.127271 2.8248352000000003,11.098671 L 2.8006752,11.088871 C 2.7857252000000003,11.082270999999999 2.7709952,11.075270999999999 2.7567052000000003,11.067571 C 2.7549952,11.066771 2.7531752000000003,11.065971 2.7514752000000002,11.064971 C 2.7346652000000002,11.055771 2.7183352000000003,11.045771 2.7024552,11.035171 C 2.6992252000000003,11.032971 2.6961052000000003,11.030771 2.6929152000000003,11.028471 C 2.6799952000000005,11.019471 2.6674152,11.010171 2.6552452000000004,11.000271 C 2.6520552000000004,10.997771 2.6488252000000005,10.995171 2.6457152000000006,10.992571 C 2.6166552000000007,10.968271 2.5898252000000004,10.941371 2.5654752000000007,10.912271 C 2.562435200000001,10.908671 2.5595452000000005,10.904971 2.5565752000000006,10.901271000000001 C 2.5477052000000007,10.890271000000002 2.5392452000000008,10.878871000000002 2.5310752000000005,10.867271 C 2.5278852000000005,10.862771 2.5246552000000007,10.858171 2.5215752000000005,10.853571 C 2.5117052000000006,10.838671 2.5022852000000007,10.823471000000001 2.4936752000000006,10.807671000000001 C 2.4914852000000005,10.803771000000001 2.4896652000000006,10.799571 2.4875552000000005,10.795571 C 2.4812052000000007,10.783371 2.4751552000000006,10.770971000000001 2.4696252000000003,10.758371 C 2.4666252,10.751571 2.4637952000000003,10.744771 2.4610552,10.737871 C 2.4566052000000003,10.726671 2.4524452,10.715371 2.4485852,10.703871 C 2.4464352000000003,10.697571 2.4441352000000003,10.691371 2.4422052,10.684871 C 2.4370852000000003,10.667971 2.4326652,10.650870999999999 2.4289152,10.633370999999999 C 2.4277252000000002,10.627671 2.4268052,10.621870999999999 2.4257652,10.616170999999998 C 2.4232052,10.602470999999998 2.4210852,10.588670999999998 2.4194152,10.574770999999998 C 2.4187152,10.568770999999998 2.4180052,10.562770999999998 2.4174552,10.556871 C 2.4157052,10.537671 2.4144852,10.518270999999999 2.4144852,10.498571 C 2.4144852,10.142971 2.7037852,9.8535708 3.0594452,9.8535708 C 3.4151051999999997,9.8535708 3.7043652,10.142871 3.7043652,10.498571 C 3.7043652,10.854271 3.4151352,11.143471 3.0594851999999997,11.143471 L 3.0594852,11.143471 M 6.0005652000000005,12.289071 C 5.9796652,12.289071 5.9586652,12.288571 5.937965200000001,12.287571 C 5.877265200000001,12.284471 5.817765200000001,12.276871 5.7597652,12.265171 C 5.7582652,12.264871000000001 5.7566652000000005,12.264571 5.7551652,12.264271 C 5.7395652,12.261071000000001 5.724165200000001,12.257371000000001 5.7086652,12.253571 C 5.7042652,12.252471000000002 5.699765200000001,12.251571 5.6953652,12.250371000000001 C 5.6821652,12.246971000000002 5.6690652,12.243071 5.655965200000001,12.239171 C 5.649365200000001,12.237271000000002 5.6427652,12.235471 5.636165200000001,12.233371 C 5.624665200000001,12.229771 5.6133652000000005,12.225771 5.602065200000001,12.221771 C 5.594065200000001,12.218971 5.585965200000001,12.216371 5.577965200000001,12.213371 C 5.567365200000001,12.209371 5.556865200000002,12.205071 5.5462652000000014,12.200871000000001 C 5.537965200000001,12.197471000000002 5.529665200000001,12.194171 5.521365200000002,12.190671000000002 C 5.087465200000001,12.004171000000001 4.782765200000002,11.572771000000001 4.782765200000002,11.071271000000001 C 4.782765200000002,10.399771000000001 5.329065200000002,9.8534708 6.000565200000002,9.8534708 C 6.672065200000002,9.8534708 7.218365200000003,10.399771 7.218365200000003,11.071271 C 7.218365200000003,11.742771 6.672065200000002,12.289071 6.000565200000002,12.289071 L 6.0005652000000005,12.289071 M 9.5119652,12.289071 C 8.8404652,12.289071 8.2941652,11.742771 8.2941652,11.071371 C 8.2941652,10.399871 8.8404652,9.8535708 9.5119652,9.8535708 C 10.183466000000001,9.8535708 10.729666,10.399871 10.729666,11.071371 C 10.729666,11.742771 10.183466,12.289071 9.5119652,12.289071 M 13.529566,12.178471 L 13.522866,12.181171 L 13.508766000000001,12.187171000000001 C 13.354766000000001,12.254671000000002 13.190966000000001,12.288871 13.022066,12.289071000000002 C 12.351166000000001,12.288471000000001 11.805566,11.742471000000002 11.805566,11.071371000000001 C 11.805566,10.399871000000001 12.351866000000001,9.8535708 13.023366000000001,9.8535708 C 13.694866000000001,9.8535708 14.241066000000002,10.399871 14.241066000000002,11.071371 C 14.241066000000002,11.562171 13.948866000000002,11.985871 13.529566000000003,12.178470999999998 L 13.529566,12.178471 M 16.603766,10.556771 C 16.603266,10.562771 16.602566,10.568671 16.601866,10.574670999999999 C 16.600166,10.588570999999998 16.598066000000003,10.602370999999998 16.595466000000002,10.616070999999998 C 16.594366,10.621770999999997 16.593566000000003,10.627670999999998 16.592266000000002,10.633370999999999 C 16.588566000000004,10.650770999999999 16.584166000000003,10.667870999999998 16.579066,10.684770999999998 C 16.577066000000002,10.691270999999999 16.574766,10.697470999999998 16.572666,10.703870999999998 C 16.568766,10.715370999999998 16.564666000000003,10.726670999999998 16.560166000000002,10.737770999999997 C 16.557466,10.744670999999997 16.554566,10.751470999999997 16.551666,10.758270999999997 C 16.546066,10.770870999999998 16.539966,10.783370999999997 16.533666,10.795470999999997 C 16.531566,10.799470999999997 16.529766,10.803570999999998 16.527566,10.807670999999997 C 16.518966,10.823370999999998 16.509566,10.838570999999998 16.499766,10.853470999999997 C 16.496666,10.858170999999997 16.493366,10.862670999999997 16.490166000000002,10.867170999999997 C 16.482066000000003,10.878870999999997 16.473666,10.890170999999997 16.464766,10.901170999999998 C 16.461766,10.904870999999998 16.458866,10.908570999999998 16.455866,10.912270999999999 C 16.431466,10.941270999999999 16.404566,10.968070999999998 16.375566,10.992470999999998 C 16.372466,10.995171 16.369266,10.997670999999999 16.366066,11.000170999999998 C 16.353866,11.010070999999998 16.341266,11.019470999999998 16.328466,11.028370999999998 C 16.325266,11.030570999999998 16.322066,11.032870999999998 16.318866,11.035070999999999 C 16.302966,11.045670999999999 16.286666,11.055670999999998 16.269866,11.064870999999998 C 16.268166,11.065870999999998 16.266366,11.066670999999998 16.264666000000002,11.067571 C 16.250366000000003,11.075171 16.235566000000002,11.082170999999999 16.220666,11.088771 L 16.196466,11.098571 C 16.123666,11.127171 16.044666,11.143471 15.961866,11.143471 C 15.606266,11.143471 15.316966,10.854071 15.316966,10.498471 C 15.316966,10.142771 15.606266000000002,9.8534708 15.961866,9.8534708 C 16.317466,9.8534708 16.606866,10.142771 16.606866,10.498471 C 16.606766,10.518171 16.605466,10.537571 16.603766,10.556771 M 15.961865,7.3472079 L 15.704265,7.3472079 L 13.246565,5.0002078999999995 L 11.849965000000001,5.0002078999999995 C 11.793165,4.6982079 11.687565000000001,4.4133078999999995 11.541265000000001,4.1540079 L 16.463865000000002,2.1144079 L 16.668465,2.6083079 L 17.708765,2.1773078999999997 L 17.504065,1.6834078999999997 L 18.745865000000002,1.1689078999999998 L 18.314865,0.12868787999999975 L 17.073065,0.6431078799999997 L 16.868465,0.14924787999999972 L 15.828265,0.5802078799999997 L 16.032865,1.0740878999999997 L 10.747265000000002,3.2641079 C 10.289265000000002,2.9317079 9.726665200000003,2.7350079 9.118665200000002,2.7350079 L 7.024165200000002,2.7350079 C 5.667165200000002,2.7350079 4.534965200000002,3.7125079 4.2927652000000025,5.0002078999999995 L 2.5752252000000024,5.0002078999999995 L 2.5752252000000024,7.3773079 C 1.5664052000000024,7.5030079 0.6503552100000025,8.0186079 0.010665210000002645,8.8353079 L 0.8575352100000027,9.4987079 C 1.3930252000000025,8.8150079 2.1955952000000027,8.422907899999998 3.0595452000000027,8.422907899999998 L 15.961765,8.422907899999998 C 16.825765,8.422907899999998 17.628265,8.815007899999998 18.163764999999998,9.4987079 L 19.010665,8.8353079 C 18.269965,7.8896079 17.158665,7.3472079 15.961865,7.3472079 "], iconName: "olympus-icons-tank" as IconName, prefix: "fas" as IconPrefix} +export const olIconsTruck: IconDefinition = { icon: [ 50.0, 50.0, [], "","M 6.7874459,7.8589804 C 5.0131033,7.8589804 3.5734059,9.298552 3.5734059,11.07302 L 3.5734059,32.499114 C 3.5734059,34.273457 5.0129775,35.713153999999996 6.7874459,35.713153999999996 L 7.8587506,35.713153999999996 C 7.8587506,39.261838999999995 10.737862,42.140919999999994 14.286515999999999,42.140919999999994 C 17.835200999999998,42.140919999999994 20.714281,39.261807999999995 20.714281,35.713153999999996 L 29.284844999999997,35.713153999999996 C 29.284844999999997,39.261838999999995 32.163987999999996,42.140919999999994 35.71261,42.140919999999994 C 39.261295,42.140919999999994 42.140375,39.261807999999995 42.140375,35.713153999999996 L 44.282985,35.713153999999996 C 45.468112999999995,35.713153999999996 46.425594,34.755672999999994 46.425594,33.570544999999996 C 46.425594,32.385417 45.468112999999995,31.427934999999994 44.282985,31.427934999999994 L 44.282985,23.748081999999997 C 44.282985,22.609815999999995 43.834359,21.518413999999996 43.030896,20.714950999999996 L 37.855219,15.539274999999996 C 37.051756999999995,14.735811999999996 35.960353999999995,14.287185999999997 34.822089,14.287185999999997 L 31.427516999999998,14.287185999999997 L 31.427516999999998,11.073145999999998 C 31.427516999999998,9.298803599999998 29.987944999999996,7.859106199999998 28.213476999999997,7.859106199999998 L 6.7874459,7.8589804 M 31.427265,18.572027 L 34.821837,18.572027 L 39.997514,23.747704 L 39.997514,24.999793 L 31.426951,24.999793 L 31.427265,18.572027 M 11.072413,35.71284 A 3.2140399,3.2140399 0.0 1,1 17.500178,35.71284 A 3.2140399,3.2140399 0.0 1,1 11.072412999999997,35.71284 L 11.072413,35.71284 M 35.712233,32.4988 A 3.2140399,3.2140399 0.0 1,1 35.712233,38.926565000000004 A 3.2140399,3.2140399 0.0 1,1 35.712233,32.4988 "], iconName: "olympus-icons-truck" as IconName, prefix: "fas" as IconPrefix} export const olMarkersAirbase: IconDefinition = { icon: [ 63.0, 63.0, [], "","M 31.4998,46.9756 C 40.0468,46.9756 46.9756,40.0468 46.9756,31.4998 C 46.9756,22.9528 40.0468,16.024 31.4998,16.024 C 22.9528,16.024 16.024,22.9528 16.024,31.4998 C 16.024,40.0468 22.9528,46.9756 31.4998,46.9756 M 31.4998,52.734 C 43.2271,52.734 52.734,43.2271 52.734,31.4998 C 52.734,19.7725 43.2271,10.2656 31.4998,10.2656 C 19.7725,10.2656 10.2656,19.7725 10.2656,31.4998 C 10.2656,43.2271 19.7725,52.734 31.4998,52.734 M 25.7895,23.9132 L 36.5242,38.6028 M 38.9357,33.9313 L 25.9313,33.0643 M 16.0507,31.5001 A 15.4494,15.4494 0.0 1,0 46.9495,31.5001 A 15.4494,15.4494 0.0 1,0 16.0507,31.5001 "], iconName: "olympus-markers-airbase" as IconName, prefix: "fas" as IconPrefix} export const olMarkersBullseye: IconDefinition = { icon: [ 793.7012159999999, 1122.5202912, [], "","M 0.0,256.0 C 0.0,114.61501 114.61511,0.00011113408 256.0,0.00011113408 C 397.38489,0.00011113408 512.0,114.61501 512.0,256.0 C 512.0,397.38499 397.38489,511.99989 256.0,511.99989 C 114.61511,511.99989 0.0,397.38499 0.0,256.0 M 256.0,112.0 C 335.52906,112.0 399.99994000000004,176.471 399.99994000000004,256.0 C 399.99994000000004,335.529 335.5290600000001,400.0 256.0,400.0 C 176.47093999999998,400.0 112.00005999999999,335.529 112.00005999999999,256.0 C 112.00005999999999,176.471 176.47093999999998,112.0 256.0,112.0 M 224.0,256.0 C 224.0,238.32688 238.32689,224.00001 256.0,224.00001 C 273.67311,224.00001 288.0,238.32688000000002 288.0,256.0 C 288.0,273.67312 273.67311,287.99999 256.0,287.99999 C 238.32689,287.99999 224.0,273.67312000000004 224.0,256.0 M 0.0,256.0 A 256.0,256.0 0.0 1,0 512.0,256.0 A 256.0,256.0 0.0 1,0 0.0,256.0 "], iconName: "olympus-markers-bullseye" as IconName, prefix: "fas" as IconPrefix} export const olMarkersDraw: IconDefinition = { icon: [ 512.0, 512.0, [], "","M 352.44544,42.011059 L 308.68207,85.774429 L 426.22831,203.32067 L 469.99168000000003,159.5573 C 492.59673000000004,136.95226 492.59673000000004,100.33207999999999 469.99168000000003,77.72703299999999 L 434.36613,42.011059 C 411.76108,19.406012000000004 375.1409,19.406012000000004 352.53586,42.011059 L 352.44544,42.011059 M 288.2471,106.20939 L 77.477646,317.06927 C 68.07394599999999,326.47297000000003 61.202011999999996,338.13717 57.404363999999994,350.88642000000004 L 25.395618,459.6619 C 23.135112999999997,467.34762 25.214778,475.57586 30.820829,481.18191 C 36.426881,486.78796 44.655118,488.86763 52.250414,486.69754 L 161.0259,454.68879 C 173.77515,450.89115 185.43935000000002,444.01921 194.84305,434.61551 L 405.79335000000003,223.75563999999997 L 288.2471,106.20939 "], iconName: "olympus-markers-draw" as IconName, prefix: "fas" as IconPrefix} @@ -343,6 +353,8 @@ export const olMarkersSmoke: IconDefinition = { icon: [ 52.0, 52.0, [], "","M 5. export const olMarkersTarget: IconDefinition = { icon: [ 52.0, 52.0, [], "","M 4.9189471000000005,6.8209338 A 1.9410306,1.948356 0.0 1,0 8.8010083,6.8209338 A 1.9410306,1.948356 0.0 1,0 4.9189471,6.8209338 L 4.9189471000000005,6.8209338 M 4.9202999,6.8167095 A 1.9410306,1.948356 0.0 1,0 8.802361099999999,6.8167095 A 1.9410306,1.948356 0.0 1,0 4.920299899999999,6.8167095 L 4.9202999,6.8167095 M 6.879787210000001,3.3855996 L 6.8388373300000005,3.3855996 A 0.29515001,0.29515001 0.0 0,1 7.133987340000001,3.68074961 L 7.133987340000001,5.71408439 A 0.29515001,0.29515001 0.0 0,1 6.8388373300000005,6.0092344 L 6.879787210000001,6.0092344 A 0.29515001,0.29515001 0.0 0,1 6.5846372,5.71408439 L 6.5846372,3.68074961 A 0.29515001,0.29515001 0.0 0,1 6.879787210000001,3.3855996 M 6.88101451,7.6347723 L 6.840064629999999,7.6347723 A 0.29515001,0.29515001 0.0 0,1 7.135214639999999,7.92992231 L 7.135214639999999,9.963257089999999 A 0.29515001,0.29515001 0.0 0,1 6.840064629999999,10.2584071 L 6.88101451,10.2584071 A 0.29515001,0.29515001 0.0 0,1 6.5858645,9.963257089999999 L 6.5858645,7.92992231 A 0.29515001,0.29515001 0.0 0,1 6.88101451,7.6347723 M 6.8469345100000005,-10.252322 L 6.805984629999999,-10.252322 A 0.29515001,0.29515001 0.0 0,1 7.10113464,-9.957171989999999 L 7.10113464,-7.92383721 A 0.29515001,0.29515001 0.0 0,1 6.805984629999999,-7.6286872 L 6.8469345100000005,-7.6286872 A 0.29515001,0.29515001 0.0 0,1 6.5517845,-7.92383721 L 6.5517845,-9.957171989999999 A 0.29515001,0.29515001 0.0 0,1 6.8469345100000005,-10.252322 M 6.84816191,-6.003149 L 6.807212029999999,-6.003149 A 0.29515001,0.29515001 0.0 0,1 7.102362039999999,-5.707998989999999 L 7.102362039999999,-3.6746642099999995 A 0.29515001,0.29515001 0.0 0,1 6.807212029999999,-3.3795141999999996 L 6.84816191,-3.3795141999999996 A 0.29515001,0.29515001 0.0 0,1 6.5530119,-3.6746642099999995 L 6.5530119,-5.707998989999999 A 0.29515001,0.29515001 0.0 0,1 6.84816191,-6.003149 "], iconName: "olympus-markers-target" as IconName, prefix: "fas" as IconPrefix} export const olOthersArrow: IconDefinition = { icon: [ 40.0, 40.0, [], "","M 23.307123,5.9592647 C 22.873778,4.919229 21.852318,4.2444464 20.725614,4.2444464 C 19.598909,4.2444464 18.577444,4.9192290000000005 18.144099,5.9592647 L 4.9526064,31.075858 C 4.432586799999999,32.313992 4.2031203999999995,34.44127 6.6142021,34.486923 C 9.9091108,34.549313 32.394412,34.319176 34.068097,34.486923 C 35.673672,34.647842999999995 36.580012,32.409561999999994 35.868854,31.075857999999997 L 23.307123,5.9592647 M 20.752403,8.175778 L 9.0427604,31.040927 L 32.000076,30.985263 L 20.752403,8.175778 "], iconName: "olympus-others-arrow" as IconName, prefix: "fas" as IconPrefix} export const olOthersCaret: IconDefinition = { icon: [ 320.0, 512.0, [], "","M 182.6,137.4 C 170.1,124.9 149.8,124.9 137.3,137.4 L 9.300000000000011,265.4 C 0.10000000000001208,274.59999999999997 -2.599999999999989,288.29999999999995 2.400000000000011,300.29999999999995 C 7.400000000000011,312.29999999999995 19.000000000000014,320.09999999999997 32.000000000000014,320.09999999999997 L 288.0,320.09999999999997 C 300.9,320.09999999999997 312.6,312.29999999999995 317.6,300.29999999999995 C 322.6,288.29999999999995 319.8,274.59999999999997 310.70000000000005,265.4 L 182.70000000000005,137.39999999999998 L 182.6,137.4 "], iconName: "olympus-others-caret" as IconName, prefix: "fas" as IconPrefix} +export const olStatesAlarmStateGreen: IconDefinition = { icon: [ 16.0, 16.0, [], "","M 3.7422746,4.0810782 C 3.5794387,3.952686 3.3430088,3.9824344 3.2146172,4.1452726 C 3.0862247,4.3081112 3.1159759,4.5445408 3.2788135,4.6729303 L 12.548052,11.938011 C 12.710890000000001,12.066403 12.94732,12.036650999999999 13.075709,11.873811 C 13.204101,11.710974 13.174349,11.474544 13.011509,11.346153 L 11.599202,10.239165999999999 C 11.602302,10.232966 11.605402,10.225076 11.608602,10.218805999999999 C 11.690021999999999,10.038744999999999 11.657131999999999,9.827368499999999 11.525622,9.6801888 L 11.409754,9.5502434 C 10.921242,8.999099 10.650365,8.2898138 10.650365,7.552346 L 10.650365,7.257985 C 10.650365,6.0460942 9.7892036,5.0346195 8.646205700000001,4.8028876 L 8.646205700000001,4.5022636 C 8.646205700000001,4.2251271 8.422302600000002,4.0012241 8.145166000000001,4.0012241 C 7.868027600000001,4.0012241 7.644127100000001,4.2251271 7.644127100000001,4.5022636 L 7.644127100000001,4.8028878 C 6.9771163,4.9375431 6.4071837,5.3383753 6.0470597,5.8879535 L 3.7422746,4.0810782 M 9.4948418,10.514745 L 5.6399655,7.4787555 L 5.6399655,7.5539145 C 5.6399655,8.2898166 5.3690896,9.000667700000001 4.8805768,9.551812 L 4.764711,9.6817695 C 4.6331885,9.8289492 4.6018725,10.040325 4.681722,10.220386 C 4.761577,10.400447 4.941637,10.514747 5.1389188,10.514747 L 9.4948418,10.514745 M 8.8544485,11.725069 C 9.0423407,11.53718 9.1472445,11.281962 9.1472445,11.015785 L 8.145166,11.015785 L 7.1430839,11.015785 C 7.1430839,11.281962 7.2479911,11.53718 7.4358797999999995,11.725069 C 7.6237711,11.912958999999999 7.878987599999999,12.017864999999999 8.145166,12.017864999999999 C 8.4113434,12.017864999999999 8.6665599,11.912957999999998 8.8544485,11.725069 "], iconName: "olympus-states-alarm-state-green" as IconName, prefix: "fas" as IconPrefix} +export const olStatesAlarmStateRed: IconDefinition = { icon: [ 16.0, 16.0, [], "","M 8.3545299,3.3811696 C 8.054308899999999,3.3811696 7.811756899999999,3.6287816000000004 7.811756899999999,3.9352666000000003 L 7.811756899999999,4.2677226 C 6.573552899999999,4.5239926 5.640658899999998,5.6425716 5.640658899999998,6.9827905999999995 L 5.640658899999998,7.308320599999999 C 5.640658899999998,8.122149599999998 5.347220899999998,8.9082726 4.818016899999998,9.5177766 L 4.692499899999998,9.6614946 C 4.550020899999998,9.824260599999999 4.516096899999998,10.058019999999999 4.602599899999998,10.257149 C 4.689099899999998,10.456276 4.884164899999997,10.58441 5.097882899999997,10.58441 L 11.611174999999998,10.58441 C 11.824892999999998,10.58441 12.018256999999998,10.456276 12.106455999999998,10.257149 C 12.194655999999998,10.05802 12.159035999999999,9.8242606 12.016555999999998,9.6614946 L 11.89104,9.5177766 C 11.361836,8.9082726 11.068399,8.1238806 11.068399,7.3083206 L 11.068399,6.9827906 C 11.068399,5.6425716 10.135504,4.523992600000001 8.8973009,4.267722600000001 L 8.8973009,3.9352666000000007 C 8.8973009,3.628781600000001 8.6547479,3.3811696000000007 8.3545249,3.3811696000000007 L 8.3545299,3.3811696 M 9.122896899999999,11.922896 C 9.326435899999998,11.715112 9.4400789,11.432869 9.4400789,11.138506 L 8.3545299,11.138506 L 7.268982899999999,11.138506 C 7.268982899999999,11.432869 7.382625899999999,11.715112 7.586165899999999,11.922896 C 7.7897069,12.130682 8.0661819,12.246697 8.3545299,12.246697 C 8.6428789,12.246697 8.9193549,12.130681999999998 9.122896899999999,11.922896 "], iconName: "olympus-states-alarm-state-red" as IconName, prefix: "fas" as IconPrefix} export const olStatesAttack: IconDefinition = { icon: [ 19.0, 15.0, [], "","M 3.9375571,11.604826 L 5.4120513,13.142064 L 8.1100626,10.334251 L 10.243372,12.373445 L 9.1610315,11.30679 L 15.074691,5.314696 L 14.525677,2.506882 L 11.81198,1.8794375 L 5.8198901,7.8087875 L 4.6748047,6.7891902 L 6.6826265,8.7499543 L 3.9375571,11.604826 M 3.7087499,11.821755 L 5.1832446,13.358994 L 8.1100626,10.334250999999998 C 9.0686656,11.233557999999999 9.1610315,11.306789999999998 9.1610315,11.306789999999998 L 14.845884,5.5316249 L 14.29687,2.7238111 L 11.583172,2.0963666 L 5.8198909,7.8087874 C 5.8198909,7.8087874 5.7057712,7.7959933999999995 6.6826265,8.7499543 L 3.7087499,11.821755 M 12.8516,4.8268957 C 13.064783,4.6137112 13.064783,4.2939346 12.8516,4.0807502 C 12.638415,3.8675656999999997 12.318639,3.8675656999999997 12.105455,4.0807502 L 8.1881937,7.9980144 C 7.975008999999999,8.2111989 7.975008999999999,8.5309756 8.1881937,8.7441602 C 8.2947861,8.850752199999999 8.4280264,8.9040483 8.5612669,8.9040483 C 8.694507399999999,8.9040483 8.8277469,8.8507523 8.9343392,8.7441602 L 12.8516,4.8268957 M 4.6748047,6.7891902 L 10.243372,12.373445 "], iconName: "olympus-states-attack" as IconName, prefix: "fas" as IconPrefix} export const olStatesAwacs: IconDefinition = { icon: [ 19.0, 15.0, [], "","M 7.9158381,11.840383 A 2.5,2.5 0.0 0,1 11.129776,11.840383 M 7.9158381,11.840383 A 2.5,2.5 0.0 0,1 11.129776,11.840383 M 5.023294,8.3931829 A 7.0,7.0 0.0 0,1 14.02232,8.3931831 M 5.023294,8.3931829 A 7.0,7.0 0.0 0,1 14.02232,8.3931831 M 2.1307496,4.945983 A 11.5,11.5 0.0 0,1 16.914865,4.9459832 M 2.1307496,4.945983 A 11.5,11.5 0.0 0,1 16.914865,4.9459832 "], iconName: "olympus-states-awacs" as IconName, prefix: "fas" as IconPrefix} export const olStatesDcs: IconDefinition = { icon: [ 19.0, 15.0, [], "","M 9.3852027,1.9350755 C 9.743423700000001,1.9350755 10.032833,2.2244854 10.032833,2.5827058 L 10.032833,3.8779676 L 12.461449,3.8779676 C 13.266941,3.8779676 13.91862,4.5296461 13.91862,5.3351371 L 13.91862,10.839998999999999 C 13.91862,11.645489999999999 13.266941000000001,12.297168 12.461449,12.297168 L 6.3089565,12.297168 C 5.5034656,12.297168 4.8517871,11.645489999999999 4.8517871,10.839998999999999 L 4.8517871,5.3351371 C 4.8517871,4.5296461 5.5034656,3.8779676 6.3089565,3.8779676 L 8.7375714,3.8779676 L 8.7375714,2.5827058 C 8.7375714,2.2244854 9.0269825,1.9350755 9.3852027,1.9350755 M 7.1184944,9.7066454 C 6.9403965,9.7066454 6.7946792,9.8523614 6.7946792,10.03046 C 6.7946792,10.208559 6.9403965,10.354277 7.1184944,10.354277 L 7.766124700000001,10.354277 C 7.9442238000000005,10.354277 8.0899411,10.208559 8.0899411,10.03046 C 8.0899411,9.8523614 7.9442238000000005,9.7066454 7.766124700000001,9.7066454 L 7.1184944,9.7066454 M 9.061387700000001,9.7066454 C 8.883288700000001,9.7066454 8.7375714,9.8523614 8.7375714,10.03046 C 8.7375714,10.208559 8.8832887,10.354277 9.061387700000001,10.354277 L 9.7090177,10.354277 C 9.8871167,10.354277 10.032833,10.208559 10.032833,10.03046 C 10.032833,9.8523614 9.8871167,9.7066454 9.7090177,9.7066454 L 9.061387700000001,9.7066454 M 11.004280000000001,9.7066454 C 10.826182000000001,9.7066454 10.680465000000002,9.8523614 10.680465000000002,10.03046 C 10.680465000000002,10.208559 10.826182000000001,10.354277 11.004280000000001,10.354277 L 11.651911000000002,10.354277 C 11.830009000000002,10.354277 11.975727000000003,10.208559 11.975727000000003,10.03046 C 11.975727000000003,9.8523614 11.830009000000002,9.7066454 11.651911000000002,9.7066454 L 11.004280000000001,9.7066454 M 8.2518487,7.1161213 A 0.8095391,0.8095391 0.0 1,0 6.6327705,7.1161213 A 0.8095391,0.8095391 0.0 1,0 8.2518487,7.1161213 M 11.328096,7.9256592999999995 A 0.80953865,0.80953865 0.0 1,0 11.328096,6.306582199999999 A 0.80953865,0.80953865 0.0 1,0 11.328096,7.9256592999999995 M 3.8803405,6.4684911 L 4.2041555,6.4684911 L 4.2041555,10.354277 L 3.8803404999999995,10.354277 C 3.3440209999999997,10.354277 2.9088937999999995,9.9191494 2.9088937999999995,9.3828284 L 2.9088937999999995,7.4399365 C 2.9088937999999995,6.9036183 3.3440209999999997,6.4684911 3.8803404999999995,6.4684911 L 3.8803405,6.4684911 M 14.890066000000001,6.4684911 C 15.426385000000002,6.4684911 15.861512000000001,6.9036183 15.861512000000001,7.4399365 L 15.861512000000001,9.3828284 C 15.861512000000001,9.919149399999998 15.426385000000002,10.354277 14.890066000000001,10.354277 L 14.566249,10.354277 L 14.566249,6.4684911 L 14.890066000000001,6.4684911 M 3.1233985,4.8923955 L 5.138020900000001,4.8923955 A 1.6057953,1.6057953 0.0 0,1 6.7438162,6.4981908 L 6.7438162,10.3745619 A 1.6057953,1.6057953 0.0 0,1 5.138020900000001,11.9803572 L 3.1233985,11.9803572 A 1.6057953,1.6057953 0.0 0,1 1.5176032,10.3745619 L 1.5176032,6.4981908 A 1.6057953,1.6057953 0.0 0,1 3.1233985,4.8923955 M 13.566374699999999,4.9978404 L 15.7211915,4.9978404 A 1.7175397,1.7175397 0.0 0,1 17.4387312,6.7153801 L 17.4387312,10.1864205 A 1.7175397,1.7175397 0.0 0,1 15.7211915,11.9039602 L 13.566374699999999,11.9039602 A 1.7175397,1.7175397 0.0 0,1 11.848835,10.1864205 L 11.848835,6.7153801 A 1.7175397,1.7175397 0.0 0,1 13.566374699999999,4.9978404 M 9.3155314,0.59372008 L 9.4734668,0.59372008 A 1.5281793,1.5281793 0.0 0,1 11.0016461,2.12189938 L 11.0016461,4.94880298 A 1.5281793,1.5281793 0.0 0,1 9.4734668,6.47698228 L 9.3155314,6.47698228 A 1.5281793,1.5281793 0.0 0,1 7.7873521,4.94880298 L 7.7873521,2.12189938 A 1.5281793,1.5281793 0.0 0,1 9.3155314,0.59372008 M 5.6264784,1.9770601 L 13.201927399999999,1.9770601 A 2.5930805,2.5930805 0.0 0,1 15.7950079,4.5701406 L 15.7950079,11.399118600000001 A 2.5930805,2.5930805 0.0 0,1 13.201927399999999,13.9921991 L 5.6264784,13.9921991 A 2.5930805,2.5930805 0.0 0,1 3.0333979,11.399118600000001 L 3.0333979,4.5701406 A 2.5930805,2.5930805 0.0 0,1 5.6264784,1.9770601 "], iconName: "olympus-states-dcs" as IconName, prefix: "fas" as IconPrefix} diff --git a/frontend/react/src/ui/contextmenus/spawncontextmenu.tsx b/frontend/react/src/ui/contextmenus/spawncontextmenu.tsx index 3d7ff8d5..81441098 100644 --- a/frontend/react/src/ui/contextmenus/spawncontextmenu.tsx +++ b/frontend/react/src/ui/contextmenus/spawncontextmenu.tsx @@ -20,6 +20,14 @@ import { olButtonsVisibilityGroundunitSam, olButtonsVisibilityHelicopter, olButtonsVisibilityNavyunit, + olIconsApc, + olIconsArtillery, + olIconsEwr, + olIconsInfantry, + olIconsRadar, + olIconsTactical, + olIconsTank, + olIconsTruck, } from "../components/olicons"; import { OlUnitListEntry } from "../components/olunitlistentry"; import { OlSearchBar } from "../components/olsearchbar"; @@ -306,9 +314,15 @@ export function SpawnContextMenu(props: {}) { /> ); })} - {blueprints?.length === 0 && No aircraft available} + `} + > + No aircraft available + + )} )} @@ -356,9 +370,15 @@ export function SpawnContextMenu(props: {}) { /> ); })} - {blueprints?.length === 0 && No helicopter available} + `} + > + No helicopter available + + )} )} @@ -409,9 +429,15 @@ export function SpawnContextMenu(props: {}) { /> ); })} - {blueprints?.length === 0 && No air defence unit available} + `} + > + No air defence unit available + + )} )} @@ -454,7 +480,21 @@ export function SpawnContextMenu(props: {}) { return ( setBlueprint(blueprint)} showCost={showCost} @@ -462,9 +502,15 @@ export function SpawnContextMenu(props: {}) { /> ); })} - {blueprints?.length === 0 && No ground unit available} + `} + > + No ground unit available + + )} )} @@ -512,13 +558,19 @@ export function SpawnContextMenu(props: {}) { /> ); })} - {blueprints?.length === 0 && No navy unit available} + `} + > + No navy unit available + + )} )} - {openAccordion === CategoryGroup.EFFECT && commandModeOptions.commandMode === GAME_MASTER && ( + {openAccordion === CategoryGroup.EFFECT && commandModeOptions.commandMode === GAME_MASTER && ( <>
)} - {openAccordion === CategoryGroup.EFFECT && commandModeOptions.commandMode !== GAME_MASTER && ( -
- Not available in this mode -
+ {openAccordion === CategoryGroup.EFFECT && commandModeOptions.commandMode !== GAME_MASTER && ( +
Not available in this mode
)} {openAccordion === CategoryGroup.SEARCH && (
diff --git a/frontend/react/src/ui/panels/awacsmenu.tsx b/frontend/react/src/ui/panels/awacsmenu.tsx index 69a37e73..c0fe82e9 100644 --- a/frontend/react/src/ui/panels/awacsmenu.tsx +++ b/frontend/react/src/ui/panels/awacsmenu.tsx @@ -46,7 +46,7 @@ export function AWACSMenu(props: { open: boolean; onClose: () => void; children? />

1 Use the coalition toggle to change your coalition as AWACS.

-

2 Optionally, set a friendly unit as reference by right clicking on it and selecting "Set AWACS reference" to create tactical calls.

+

2 Optionally, set a friendly unit as reference by left clicking and holding on it and selecting "Set AWACS reference" to create tactical calls.

diff --git a/frontend/react/src/ui/panels/header.tsx b/frontend/react/src/ui/panels/header.tsx index 55a2e7e1..52fcbb2c 100644 --- a/frontend/react/src/ui/panels/header.tsx +++ b/frontend/react/src/ui/panels/header.tsx @@ -1,23 +1,9 @@ import React, { useEffect, useRef, useState } from "react"; import { OlRoundStateButton, OlStateButton, OlLockStateButton } from "../components/olstatebutton"; -import { - faSkull, - faCamera, - faFlag, - faVolumeHigh, - faDownload, - faUpload, - faDrawPolygon, - faCircle, - faTriangleExclamation, - faWifi, - faHourglass, - faInfo, - faObjectGroup, -} from "@fortawesome/free-solid-svg-icons"; +import { faSkull, faCamera, faFlag, faVolumeHigh, faDrawPolygon, faTriangleExclamation, faWifi, faObjectGroup } from "@fortawesome/free-solid-svg-icons"; import { OlDropdownItem, OlDropdown } from "../components/oldropdown"; import { OlLabelToggle } from "../components/ollabeltoggle"; -import { getApp, IP } from "../../olympusapp"; +import { getApp, IP, VERSION } from "../../olympusapp"; import { olButtonsVisibilityAirbase, olButtonsVisibilityAircraft, @@ -39,20 +25,10 @@ import { SessionDataChangedEvent, SessionDataSavedEvent, } from "../../events"; -import { - BLUE_COMMANDER, - COMMAND_MODE_OPTIONS_DEFAULTS, - ImportExportSubstate, - MAP_HIDDEN_TYPES_DEFAULTS, - MAP_OPTIONS_DEFAULTS, - OlympusState, - RED_COMMANDER, -} from "../../constants/constants"; +import { BLUE_COMMANDER, COMMAND_MODE_OPTIONS_DEFAULTS, MAP_HIDDEN_TYPES_DEFAULTS, MAP_OPTIONS_DEFAULTS, RED_COMMANDER } from "../../constants/constants"; import { OlympusConfig } from "../../interfaces"; -import { FaCheck, FaQuestionCircle, FaSave, FaSpinner } from "react-icons/fa"; +import { FaCheck, FaSpinner } from "react-icons/fa"; import { OlExpandingTooltip } from "../components/olexpandingtooltip"; -import { ftToM } from "../../other/utils"; -import { LatLng } from "leaflet"; export function Header() { const [mapHiddenTypes, setMapHiddenTypes] = useState(MAP_HIDDEN_TYPES_DEFAULTS); @@ -64,12 +40,16 @@ export function Header() { const [audioEnabled, setAudioEnabled] = useState(false); const [commandModeOptions, setCommandModeOptions] = useState(COMMAND_MODE_OPTIONS_DEFAULTS); const [savingSessionData, setSavingSessionData] = useState(false); + const [latestVersion, setLatestVersion] = useState(""); + const [isLatestVersion, setIsLatestVersion] = useState(false); + const [isBetaVersion, setIsBetaVersion] = useState(false); + const [isDevVersion, setIsDevVersion] = useState(false); useEffect(() => { HiddenTypesChangedEvent.on((hiddenTypes) => setMapHiddenTypes({ ...hiddenTypes })); MapOptionsChangedEvent.on((mapOptions) => { - setMapOptions({ ...mapOptions }) - }); + setMapOptions({ ...mapOptions }); + }); MapSourceChangedEvent.on((source) => setMapSource(source)); ConfigLoadedEvent.on((config: OlympusConfig) => { // Timeout needed to make sure the map configuration has updated @@ -83,6 +63,48 @@ export function Header() { }); SessionDataChangedEvent.on(() => setSavingSessionData(true)); SessionDataSavedEvent.on(() => setSavingSessionData(false)); + + /* Check if we are running the latest version */ + const request = new Request("https://raw.githubusercontent.com/Pax1601/DCSOlympus/main/version.json"); + fetch(request) + .then((response) => { + if (response.status === 200) { + return response.json(); + } else { + throw new Error("Error connecting to Github to retrieve latest version"); + } + }) + .then((res) => { + setLatestVersion(res["version"]); + + if (VERSION === "{{OLYMPUS_VERSION_NUMBER}}") { + console.log("OLYMPUS_VERSION_NUMBER is not set. Skipping version check."); + setIsDevVersion(true); + return; + } + + /* Check if the new version is newer than the current one */ + /* Extract the version numbers */ + const currentVersion = VERSION.replace("v", "").split("."); + const newVersion = res["version"].replace("v", "").split("."); + + setIsBetaVersion(true); + setIsLatestVersion(true); + + /* Compare the version numbers */ + for (var i = 0; i < currentVersion.length; i++) { + if (parseInt(newVersion[i]) > parseInt(currentVersion[i])) { + setIsLatestVersion(false); + } + } + + /* Check if this is a beta version checking if this version is newer */ + for (var i = 0; i < currentVersion.length; i++) { + if (parseInt(newVersion[i]) < parseInt(currentVersion[i])) { + setIsBetaVersion(false); + } + } + }); }, []); /* Initialize the "scroll" position of the element */ @@ -174,6 +196,20 @@ export function Header() {
)}
+ {isDevVersion ? ( +
Development build
+ ) : ( + <> +
+ {!isLatestVersion && ( +
+ New version available: {latestVersion} +
+ )} +
+
{!isBetaVersion &&
beta version
}
+ + )} {commandModeOptions.commandMode === BLUE_COMMANDER && ( diff --git a/frontend/react/src/ui/panels/spawnmenu.tsx b/frontend/react/src/ui/panels/spawnmenu.tsx index fd9a390b..ad70bf30 100644 --- a/frontend/react/src/ui/panels/spawnmenu.tsx +++ b/frontend/react/src/ui/panels/spawnmenu.tsx @@ -7,11 +7,17 @@ import { OlUnitListEntry } from "../components/olunitlistentry"; import { UnitSpawnMenu } from "./unitspawnmenu"; import { SpawnRequestTable, UnitBlueprint } from "../../interfaces"; import { - olButtonsVisibilityAircraft, olButtonsVisibilityGroundunit, olButtonsVisibilityGroundunitSam, - olButtonsVisibilityHelicopter, olButtonsVisibilityNavyunit, + olIconsApc, + olIconsArtillery, + olIconsEwr, + olIconsInfantry, + olIconsRadar, + olIconsTactical, + olIconsTank, + olIconsTruck, } from "../components/olicons"; import { faExplosion, faSmog } from "@fortawesome/free-solid-svg-icons"; import { OlEffectListEntry } from "../components/oleffectlistentry"; @@ -99,6 +105,8 @@ export function SpawnMenu(props: { open: boolean; onClose: () => void; children? }); } + filteredBlueprints.sort((a, b) => a.label.localeCompare(b.label)); + useEffect(() => { if (!props.open) { if (blueprint !== null) setBlueprint(null); @@ -263,7 +271,7 @@ export function SpawnMenu(props: { open: boolean; onClose: () => void; children? return ( setBlueprint(blueprint)} showCost={showCost} @@ -339,9 +347,13 @@ export function SpawnMenu(props: { open: boolean; onClose: () => void; children? /> ); })} - {filteredBlueprints.filter((blueprint) => blueprint.canAAA).length === 0 && No AAA unit available} + {filteredBlueprints.filter((blueprint) => blueprint.canAAA).length === 0 && ( + + No AAA unit available + + )} void; children? return ( setBlueprint(blueprint)} showCost={showCost}