mirror of
https://github.com/Pax1601/DCSOlympus.git
synced 2025-10-29 16:56:34 +00:00
Merge branch 'main' into 633-unable-to-hide-olympus-controlled-units
This commit is contained in:
commit
1eb3beeb2e
@ -92,7 +92,7 @@ class DemoDataGenerator {
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
*/
|
||||
let idx = 1;
|
||||
DEMO_UNIT_DATA[idx] = JSON.parse(JSON.stringify(baseData));
|
||||
DEMO_UNIT_DATA[idx].name = "S_75M_Volhov";
|
||||
@ -153,7 +153,7 @@ class DemoDataGenerator {
|
||||
DEMO_UNIT_DATA[idx].position.lat += idx / 100;
|
||||
DEMO_UNIT_DATA[idx].category = "Aircraft";
|
||||
DEMO_UNIT_DATA[idx].isLeader = true;
|
||||
*/
|
||||
|
||||
|
||||
this.startTime = Date.now();
|
||||
}
|
||||
|
||||
15
client/package-lock.json
generated
15
client/package-lock.json
generated
@ -19,7 +19,8 @@
|
||||
"leaflet-gesture-handling": "^1.2.2",
|
||||
"morgan": "~1.9.1",
|
||||
"save": "^2.9.0",
|
||||
"srtm-elevation": "^2.1.2"
|
||||
"srtm-elevation": "^2.1.2",
|
||||
"uuid": "^9.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/preset-env": "^7.21.4",
|
||||
@ -8820,6 +8821,18 @@
|
||||
"node": ">= 0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/uuid": {
|
||||
"version": "9.0.1",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
|
||||
"integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
|
||||
"funding": [
|
||||
"https://github.com/sponsors/broofa",
|
||||
"https://github.com/sponsors/ctavan"
|
||||
],
|
||||
"bin": {
|
||||
"uuid": "dist/bin/uuid"
|
||||
}
|
||||
},
|
||||
"node_modules/vary": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
|
||||
|
||||
@ -25,7 +25,8 @@
|
||||
"leaflet-gesture-handling": "^1.2.2",
|
||||
"morgan": "~1.9.1",
|
||||
"save": "^2.9.0",
|
||||
"srtm-elevation": "^2.1.2"
|
||||
"srtm-elevation": "^2.1.2",
|
||||
"uuid": "^9.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/preset-env": "^7.21.4",
|
||||
|
||||
@ -4862,7 +4862,7 @@
|
||||
"Bf-109K-4": {
|
||||
"name": "Bf-109K-4",
|
||||
"coalition": "red",
|
||||
"label": "Bf-109K-4 Fritz",
|
||||
"label": "Bf-109K-4",
|
||||
"era": "WW2",
|
||||
"shortLabel": "109",
|
||||
"loadouts": [
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,33 +1,17 @@
|
||||
{
|
||||
"BDK-775": {
|
||||
"name": "BDK-775",
|
||||
"coalition": "blue",
|
||||
"type": "Landing Ship",
|
||||
"era": "Mid Cold War",
|
||||
"label": "LS Ropucha",
|
||||
"shortLabel": "LS Ropucha",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 25000,
|
||||
"engagementRange": 6000,
|
||||
"description": "Landing ship Ropucha",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
"canRearm": false
|
||||
},
|
||||
"CVN_71": {
|
||||
"name": "CVN_71",
|
||||
"coalition": "blue",
|
||||
"type": "Super Aircraft Carrier",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "CVN-71 Theodore Roosevelt",
|
||||
"label": "CVN-71 Theodore Roosevelt (SC)",
|
||||
"shortLabel": "CVN-71",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -36,15 +20,16 @@
|
||||
"CVN_72": {
|
||||
"name": "CVN_72",
|
||||
"coalition": "blue",
|
||||
"type": "Super Aircraft Carrier",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "CVN-72 Abraham Lincoln",
|
||||
"label": "CVN-72 Abraham Lincoln (SC)",
|
||||
"shortLabel": "CVN-72",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -53,15 +38,16 @@
|
||||
"CVN_73": {
|
||||
"name": "CVN_73",
|
||||
"coalition": "blue",
|
||||
"type": "Super Aircraft Carrier",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "CVN-73 George Washington",
|
||||
"label": "CVN-73 George Washington (SC)",
|
||||
"shortLabel": "CVN-73",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -72,7 +58,7 @@
|
||||
"coalition": "blue",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "CVN-75 Harry S. Truman",
|
||||
"label": "CVN-75 Harry S. Truman (SC)",
|
||||
"shortLabel": "CVN-75",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
@ -101,6 +87,7 @@
|
||||
},
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -111,13 +98,14 @@
|
||||
"coalition": "red",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Modern",
|
||||
"label": "CV Admiral Kuznetsov(2017)",
|
||||
"shortLabel": "Admiral Kuznetsov(2017)",
|
||||
"label": "Admiral Kuznetsov (2017)",
|
||||
"shortLabel": "Admiral Kuznetsov",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 25000,
|
||||
"engagementRange": 12000,
|
||||
"tags": "",
|
||||
"description": "Admiral Kuznetsov. Conventional STOBAR carrier",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -126,8 +114,8 @@
|
||||
"CastleClass_01": {
|
||||
"name": "CastleClass_01",
|
||||
"coalition": "blue",
|
||||
"type": "Patrol",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Leeds Castle (P-258)",
|
||||
"shortLabel": "HMS Leeds Castle (P-258)",
|
||||
"range": "",
|
||||
@ -141,6 +129,7 @@
|
||||
},
|
||||
"acquisitionRange": 25000,
|
||||
"engagementRange": 3000,
|
||||
"tags": "",
|
||||
"description": "HMS Leeds Castle. Smaller. Patrol craft",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -149,7 +138,7 @@
|
||||
"HandyWind": {
|
||||
"name": "HandyWind",
|
||||
"coalition": "blue",
|
||||
"type": "Cargoship",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Late Cold War",
|
||||
"label": "Bulker Handy Wind",
|
||||
"shortLabel": "Bulker Handy Wind",
|
||||
@ -176,6 +165,7 @@
|
||||
},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -184,7 +174,7 @@
|
||||
"HarborTug": {
|
||||
"name": "HarborTug",
|
||||
"coalition": "",
|
||||
"type": "Tug",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Mid Cold War",
|
||||
"label": "Harbor Tug",
|
||||
"shortLabel": "Harbor Tug",
|
||||
@ -211,6 +201,7 @@
|
||||
},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -228,6 +219,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 20000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -481,6 +473,7 @@
|
||||
},
|
||||
"acquisitionRange": 19000,
|
||||
"engagementRange": 4000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -489,15 +482,16 @@
|
||||
"Seawise_Giant": {
|
||||
"name": "Seawise_Giant",
|
||||
"coalition": "blue",
|
||||
"type": "Tanker",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Late Cold War",
|
||||
"label": "Tanker Seawise Giant",
|
||||
"label": "Seawise Giant (Tanker)",
|
||||
"shortLabel": "Seawise Giant",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -506,7 +500,7 @@
|
||||
"Ship_Tilde_Supply": {
|
||||
"name": "Ship_Tilde_Supply",
|
||||
"coalition": "blue",
|
||||
"type": "Transport",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Late Cold War",
|
||||
"label": "Supply Ship MV Tilde",
|
||||
"shortLabel": "Supply Ship Tilde",
|
||||
@ -515,6 +509,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -532,6 +527,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -540,9 +536,9 @@
|
||||
"TICONDEROG": {
|
||||
"name": "TICONDEROG",
|
||||
"coalition": "blue",
|
||||
"type": "Cruiser",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Ticonderoga",
|
||||
"label": "Ticonderoga Class (Cruiser)",
|
||||
"shortLabel": "Ticonderoga",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
@ -611,6 +607,7 @@
|
||||
},
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -619,9 +616,9 @@
|
||||
"Type_052B": {
|
||||
"name": "Type_052B",
|
||||
"coalition": "red",
|
||||
"type": "Destroyer",
|
||||
"type": "Combatants",
|
||||
"era": "Modern",
|
||||
"label": "052B DDG-168 Guangzhou",
|
||||
"label": "Type 52B Guangzhou",
|
||||
"shortLabel": "Type 52B",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
@ -646,6 +643,7 @@
|
||||
},
|
||||
"acquisitionRange": 100000,
|
||||
"engagementRange": 30000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -654,9 +652,9 @@
|
||||
"Type_052C": {
|
||||
"name": "Type_052C",
|
||||
"coalition": "red",
|
||||
"type": "Destroyer",
|
||||
"type": "Combatants",
|
||||
"era": "Modern",
|
||||
"label": "052C DDG-171 Haikou",
|
||||
"label": "Type 52C Haikou (Destroyer)",
|
||||
"shortLabel": "Type 52C",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
@ -705,6 +703,7 @@
|
||||
},
|
||||
"acquisitionRange": 260000,
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -713,9 +712,9 @@
|
||||
"Type_054A": {
|
||||
"name": "",
|
||||
"coalition": "red",
|
||||
"type": "Frigate",
|
||||
"type": "Combatants",
|
||||
"era": "Modern",
|
||||
"label": "054A FFG-538 Yantai",
|
||||
"label": "Type 54A Yantai (Frigate)",
|
||||
"shortLabel": "Type 54A",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
@ -872,15 +871,16 @@
|
||||
},
|
||||
"acquisitionRange": 160000,
|
||||
"engagementRange": 45000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "35nm >50,000ft range"
|
||||
},
|
||||
"Type_071": {
|
||||
"name": "Type_071",
|
||||
"coalition": "red",
|
||||
"type": "Transport",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Modern",
|
||||
"label": "Type 071",
|
||||
"label": "Type 071 (Transport dock)",
|
||||
"shortLabel": "Type 071",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
@ -925,6 +925,7 @@
|
||||
},
|
||||
"acquisitionRange": 300000,
|
||||
"engagementRange": 150000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -935,7 +936,7 @@
|
||||
"coalition": "red",
|
||||
"type": "Submarine",
|
||||
"era": "Modern",
|
||||
"label": "Type 093",
|
||||
"label": "Type 093 (Shang)",
|
||||
"shortLabel": "Type 093",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
@ -948,6 +949,7 @@
|
||||
},
|
||||
"acquisitionRange": 40000,
|
||||
"engagementRange": 40000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -956,10 +958,10 @@
|
||||
"USS_Arleigh_Burke_IIa": {
|
||||
"name": "USS_Arleigh_Burke_IIa",
|
||||
"coalition": "blue",
|
||||
"type": "Destroyer",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "DDG Arleigh Burke lla",
|
||||
"shortLabel": "DDG Arleigh Burke",
|
||||
"label": "Arleigh Burke Class (Destroyer)",
|
||||
"shortLabel": "Arleigh Burke Class (Destroyer)",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
@ -1064,6 +1066,7 @@
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000,
|
||||
"abilities": "",
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"canTargetPoint": true,
|
||||
"canRearm": false
|
||||
@ -1080,6 +1083,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 18000,
|
||||
"engagementRange": 5000,
|
||||
"tags": "",
|
||||
"description": "ARA Vienticinco de Mayo. Conventional CATOBAR carrier",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1089,14 +1093,15 @@
|
||||
"name": "hms_invincible",
|
||||
"coalition": "blue",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Mid Cold War",
|
||||
"label": "HMS Invincible (R05)",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Invincible",
|
||||
"shortLabel": "HMS Invincible",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 100000,
|
||||
"engagementRange": 74000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1105,8 +1110,8 @@
|
||||
"leander-gun-achilles": {
|
||||
"name": "leander-gun-achilles",
|
||||
"coalition": "blue",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Achilles (F12)",
|
||||
"shortLabel": "HMS Achilles",
|
||||
"range": "",
|
||||
@ -1114,6 +1119,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 180000,
|
||||
"engagementRange": 8000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1122,8 +1128,8 @@
|
||||
"leander-gun-andromeda": {
|
||||
"name": "leander-gun-andromeda",
|
||||
"coalition": "blue",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Andromeda (F57)",
|
||||
"shortLabel": "HMS Andromeda",
|
||||
"range": "",
|
||||
@ -1131,6 +1137,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 180000,
|
||||
"engagementRange": 140000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1139,8 +1146,8 @@
|
||||
"leander-gun-ariadne": {
|
||||
"name": "leander-gun-ariadne",
|
||||
"coalition": "blue",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Ariadne (F72)",
|
||||
"shortLabel": "HMS Ariadne",
|
||||
"range": "",
|
||||
@ -1148,6 +1155,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1156,8 +1164,8 @@
|
||||
"leander-gun-condell": {
|
||||
"name": "leander-gun-condell",
|
||||
"coalition": "",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Almirante Condell PFG-06",
|
||||
"shortLabel": "Almirante Condell",
|
||||
"range": "",
|
||||
@ -1165,6 +1173,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1173,8 +1182,8 @@
|
||||
"leander-gun-lynch": {
|
||||
"name": "leander-gun-lynch",
|
||||
"coalition": "",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "CNS Almirante Lynch (PFG-07)",
|
||||
"shortLabel": "CNS Almirante Lynch",
|
||||
"range": "",
|
||||
@ -1182,6 +1191,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 180000,
|
||||
"engagementRange": 140000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1191,7 +1201,7 @@
|
||||
"name": "santafe",
|
||||
"coalition": "",
|
||||
"type": "Submarine",
|
||||
"era": "Early Cold War",
|
||||
"era": "WW2",
|
||||
"label": "ARA Santa Fe S-21",
|
||||
"shortLabel": "ARA Santa",
|
||||
"range": "",
|
||||
@ -1199,6 +1209,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1210,36 +1221,21 @@
|
||||
"era": "",
|
||||
"label": "Boat Armed Hi-speed",
|
||||
"shortLabel": "Boat Armed Hi-speed",
|
||||
"type": "Speedboat",
|
||||
"type": "Fast Attack Craft",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 5000,
|
||||
"engagementRange": 1000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
"canRearm": false
|
||||
},
|
||||
"VINSON": {
|
||||
"name": "VINSON",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"label": "CVN-70 Carl Vinson",
|
||||
"shortLabel": "CVN-70 Carl Vinson",
|
||||
"type": "Aircraft Carrier",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 30000,
|
||||
"engagementRange": 15000,
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"PERRY": {
|
||||
"name": "perry",
|
||||
"coalition": "blue",
|
||||
"type": "Frigate",
|
||||
"type": "Combatants",
|
||||
"era": "Mid Cold War",
|
||||
"label": "Oliver H. Perry",
|
||||
"shortLabel": "Oliver H. Perry",
|
||||
@ -1289,13 +1285,18 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"ALBATROS": {
|
||||
"name": "albatros",
|
||||
"coalition": "red",
|
||||
"type": "Frigate",
|
||||
"era": "Early Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Modern",
|
||||
"label": "Albatros (Grisha-5)",
|
||||
"shortLabel": "Albatros",
|
||||
"range": "",
|
||||
@ -1340,7 +1341,12 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 30000,
|
||||
"engagementRange": 16000
|
||||
"engagementRange": 16000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"KUZNECOW": {
|
||||
"name": "kuznecow",
|
||||
@ -1348,17 +1354,22 @@
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "Admiral Kuznetsov",
|
||||
"shortLabel": "Admiral Kuznetsov",
|
||||
"shortLabel": "AK",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 25000,
|
||||
"engagementRange": 12000
|
||||
"engagementRange": 12000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"MOLNIYA": {
|
||||
"name": "molniya",
|
||||
"coalition": "",
|
||||
"type": "Corvette",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Molniya (Tarantul-3)",
|
||||
"shortLabel": "Molniya",
|
||||
@ -1380,12 +1391,17 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 21000,
|
||||
"engagementRange": 2000
|
||||
"engagementRange": 2000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"MOSCOW": {
|
||||
"name": "moscow",
|
||||
"coalition": "red",
|
||||
"type": "Cruiser",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Moscow",
|
||||
"shortLabel": "Moscow",
|
||||
@ -1411,12 +1427,17 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 160000,
|
||||
"engagementRange": 75000
|
||||
"engagementRange": 75000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"NEUSTRASH": {
|
||||
"name": "neustrash",
|
||||
"coalition": "red",
|
||||
"type": "Frigate",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Neustrashimy",
|
||||
"shortLabel": "Neustrashimy",
|
||||
@ -1424,19 +1445,25 @@
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 27000,
|
||||
"engagementRange": 12000
|
||||
"engagementRange": 12000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"PIOTR": {
|
||||
"name": "PIOTR",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"label": "Battlecruiser 1144.2 Pyotr Velikiy",
|
||||
"shortLabel": "Battlecruiser 1144.2 Pyotr Velikiy",
|
||||
"type": "Cruiser",
|
||||
"coalition": "red",
|
||||
"era": "Late Cold War",
|
||||
"label": "Pyotr Velikiy (Battlecruiser)",
|
||||
"shortLabel": "Pyotr Velikiy",
|
||||
"type": "Combatants",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 250000,
|
||||
"engagementRange": 190000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1445,20 +1472,25 @@
|
||||
"REZKY": {
|
||||
"name": "Rezky (Krivak-2)",
|
||||
"coalition": "red",
|
||||
"type": "Frigate",
|
||||
"era": "Early Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "WW2",
|
||||
"label": "Rezky (Krivak-2)",
|
||||
"shortLabel": "Rezky",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 30000,
|
||||
"engagementRange": 16000
|
||||
"engagementRange": 16000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"ELNYA": {
|
||||
"name": "elnya",
|
||||
"coalition": "red",
|
||||
"type": "Tanker",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Late Cold War",
|
||||
"label": "Elnya tanker",
|
||||
"shortLabel": "Elnya tanker",
|
||||
@ -1480,7 +1512,12 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"Dry-cargo ship-2": {
|
||||
"name": "Dry-cargo ship-2",
|
||||
@ -1488,11 +1525,12 @@
|
||||
"era": "",
|
||||
"label": "Cargo Ivanov",
|
||||
"shortLabel": "Cargo Ivanov",
|
||||
"type": "Cargoship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1504,11 +1542,12 @@
|
||||
"era": "",
|
||||
"label": "Bulker Yakushev",
|
||||
"shortLabel": "Bulker Yakushev",
|
||||
"type": "Cargoship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1517,7 +1556,7 @@
|
||||
"ZWEZDNY": {
|
||||
"name": "zwezdny",
|
||||
"coalition": "",
|
||||
"type": "Civilian Boat",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Modern",
|
||||
"label": "Zwezdny",
|
||||
"shortLabel": "Zwezdny",
|
||||
@ -1525,32 +1564,43 @@
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"KILO": {
|
||||
"name": "kilo",
|
||||
"coalition": "red",
|
||||
"type": "Submarine",
|
||||
"era": "Late Cold War",
|
||||
"era": "Mid Cold War",
|
||||
"label": "Project 636 Varshavyanka Basic",
|
||||
"shortLabel": "Varshavyanka Basic",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"IMPROVED_KILO": {
|
||||
"name": "IMPROVED_KILO",
|
||||
"coalition": "",
|
||||
"coalition": "red",
|
||||
"era": "",
|
||||
"label": "SSK 636 Improved Kilo",
|
||||
"shortLabel": "SSK 636 Improved Kilo",
|
||||
"shortLabel": "Kilo",
|
||||
"type": "Submarine",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1561,12 +1611,13 @@
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"label": "SSK 641B Tango",
|
||||
"shortLabel": "SSK 641B Tango",
|
||||
"shortLabel": "Tango",
|
||||
"type": "Submarine",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1574,8 +1625,8 @@
|
||||
},
|
||||
"Forrestal": {
|
||||
"name": "Forrestal",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "blue",
|
||||
"era": "Early Cold War",
|
||||
"label": "CV-59 Forrestal",
|
||||
"shortLabel": "CV-59 Forrestal",
|
||||
"type": "Aircraft Carrier",
|
||||
@ -1583,6 +1634,7 @@
|
||||
"liveries": {},
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1590,15 +1642,16 @@
|
||||
},
|
||||
"LST_Mk2": {
|
||||
"name": "LST_Mk2",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "blue",
|
||||
"era": "WW2",
|
||||
"label": "LST Mk.II",
|
||||
"shortLabel": "LST Mk.II",
|
||||
"type": "Landing Ship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 4000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1606,15 +1659,16 @@
|
||||
},
|
||||
"USS_Samuel_Chase": {
|
||||
"name": "USS_Samuel_Chase",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "blue",
|
||||
"era": "WW2",
|
||||
"label": "LS Samuel Chase",
|
||||
"shortLabel": "LS Samuel Chase",
|
||||
"type": "Landing Ship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 7000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1622,15 +1676,16 @@
|
||||
},
|
||||
"Higgins_boat": {
|
||||
"name": "Higgins_boat",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "blue",
|
||||
"era": "WW2",
|
||||
"label": "Boat LCVP Higgins",
|
||||
"shortLabel": "Boat LCVP Higgins",
|
||||
"type": "Landing Ship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 3000,
|
||||
"engagementRange": 1000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1638,15 +1693,16 @@
|
||||
},
|
||||
"Uboat_VIIC": {
|
||||
"name": "Uboat_VIIC",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"label": "U-boat VIIC U-flak",
|
||||
"shortLabel": "U-boat VIIC U-flak",
|
||||
"coalition": "red",
|
||||
"era": "WW2",
|
||||
"label": "U-boat VIIC",
|
||||
"shortLabel": "U-boat",
|
||||
"type": "Submarine",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 20000,
|
||||
"engagementRange": 4000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1654,15 +1710,16 @@
|
||||
},
|
||||
"Schnellboot_type_S130": {
|
||||
"name": "Schnellboot_type_S130",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "red",
|
||||
"era": "WW2",
|
||||
"label": "Boat Schnellboot type S130",
|
||||
"shortLabel": "Boat Schnellboot type S130",
|
||||
"type": "Torpedo Boat",
|
||||
"type": "Fast Attack Craft",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 10000,
|
||||
"engagementRange": 4000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,33 +1,17 @@
|
||||
{
|
||||
"BDK-775": {
|
||||
"name": "BDK-775",
|
||||
"coalition": "blue",
|
||||
"type": "Landing Ship",
|
||||
"era": "Mid Cold War",
|
||||
"label": "LS Ropucha",
|
||||
"shortLabel": "LS Ropucha",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 25000,
|
||||
"engagementRange": 6000,
|
||||
"description": "Landing ship Ropucha",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
"canRearm": false
|
||||
},
|
||||
"CVN_71": {
|
||||
"name": "CVN_71",
|
||||
"coalition": "blue",
|
||||
"type": "Super Aircraft Carrier",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "CVN-71 Theodore Roosevelt",
|
||||
"label": "CVN-71 Theodore Roosevelt (SC)",
|
||||
"shortLabel": "CVN-71",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -36,15 +20,16 @@
|
||||
"CVN_72": {
|
||||
"name": "CVN_72",
|
||||
"coalition": "blue",
|
||||
"type": "Super Aircraft Carrier",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "CVN-72 Abraham Lincoln",
|
||||
"label": "CVN-72 Abraham Lincoln (SC)",
|
||||
"shortLabel": "CVN-72",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -53,15 +38,16 @@
|
||||
"CVN_73": {
|
||||
"name": "CVN_73",
|
||||
"coalition": "blue",
|
||||
"type": "Super Aircraft Carrier",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "CVN-73 George Washington",
|
||||
"label": "CVN-73 George Washington (SC)",
|
||||
"shortLabel": "CVN-73",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -72,7 +58,7 @@
|
||||
"coalition": "blue",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "CVN-75 Harry S. Truman",
|
||||
"label": "CVN-75 Harry S. Truman (SC)",
|
||||
"shortLabel": "CVN-75",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
@ -101,6 +87,7 @@
|
||||
},
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -111,13 +98,14 @@
|
||||
"coalition": "red",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Modern",
|
||||
"label": "CV Admiral Kuznetsov(2017)",
|
||||
"shortLabel": "Admiral Kuznetsov(2017)",
|
||||
"label": "Admiral Kuznetsov (2017)",
|
||||
"shortLabel": "Admiral Kuznetsov",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 25000,
|
||||
"engagementRange": 12000,
|
||||
"tags": "",
|
||||
"description": "Admiral Kuznetsov. Conventional STOBAR carrier",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -126,8 +114,8 @@
|
||||
"CastleClass_01": {
|
||||
"name": "CastleClass_01",
|
||||
"coalition": "blue",
|
||||
"type": "Patrol",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Leeds Castle (P-258)",
|
||||
"shortLabel": "HMS Leeds Castle (P-258)",
|
||||
"range": "",
|
||||
@ -141,6 +129,7 @@
|
||||
},
|
||||
"acquisitionRange": 25000,
|
||||
"engagementRange": 3000,
|
||||
"tags": "",
|
||||
"description": "HMS Leeds Castle. Smaller. Patrol craft",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -149,7 +138,7 @@
|
||||
"HandyWind": {
|
||||
"name": "HandyWind",
|
||||
"coalition": "blue",
|
||||
"type": "Cargoship",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Late Cold War",
|
||||
"label": "Bulker Handy Wind",
|
||||
"shortLabel": "Bulker Handy Wind",
|
||||
@ -176,6 +165,7 @@
|
||||
},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -184,7 +174,7 @@
|
||||
"HarborTug": {
|
||||
"name": "HarborTug",
|
||||
"coalition": "",
|
||||
"type": "Tug",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Mid Cold War",
|
||||
"label": "Harbor Tug",
|
||||
"shortLabel": "Harbor Tug",
|
||||
@ -211,6 +201,7 @@
|
||||
},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -228,6 +219,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 20000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -481,6 +473,7 @@
|
||||
},
|
||||
"acquisitionRange": 19000,
|
||||
"engagementRange": 4000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -489,15 +482,16 @@
|
||||
"Seawise_Giant": {
|
||||
"name": "Seawise_Giant",
|
||||
"coalition": "blue",
|
||||
"type": "Tanker",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Late Cold War",
|
||||
"label": "Tanker Seawise Giant",
|
||||
"label": "Seawise Giant (Tanker)",
|
||||
"shortLabel": "Seawise Giant",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -506,7 +500,7 @@
|
||||
"Ship_Tilde_Supply": {
|
||||
"name": "Ship_Tilde_Supply",
|
||||
"coalition": "blue",
|
||||
"type": "Transport",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Late Cold War",
|
||||
"label": "Supply Ship MV Tilde",
|
||||
"shortLabel": "Supply Ship Tilde",
|
||||
@ -515,6 +509,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -532,6 +527,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -540,9 +536,9 @@
|
||||
"TICONDEROG": {
|
||||
"name": "TICONDEROG",
|
||||
"coalition": "blue",
|
||||
"type": "Cruiser",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Ticonderoga",
|
||||
"label": "Ticonderoga Class (Cruiser)",
|
||||
"shortLabel": "Ticonderoga",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
@ -611,6 +607,7 @@
|
||||
},
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -619,9 +616,9 @@
|
||||
"Type_052B": {
|
||||
"name": "Type_052B",
|
||||
"coalition": "red",
|
||||
"type": "Destroyer",
|
||||
"type": "Combatants",
|
||||
"era": "Modern",
|
||||
"label": "052B DDG-168 Guangzhou",
|
||||
"label": "Type 52B Guangzhou",
|
||||
"shortLabel": "Type 52B",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
@ -646,6 +643,7 @@
|
||||
},
|
||||
"acquisitionRange": 100000,
|
||||
"engagementRange": 30000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -654,9 +652,9 @@
|
||||
"Type_052C": {
|
||||
"name": "Type_052C",
|
||||
"coalition": "red",
|
||||
"type": "Destroyer",
|
||||
"type": "Combatants",
|
||||
"era": "Modern",
|
||||
"label": "052C DDG-171 Haikou",
|
||||
"label": "Type 52C Haikou (Destroyer)",
|
||||
"shortLabel": "Type 52C",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
@ -705,6 +703,7 @@
|
||||
},
|
||||
"acquisitionRange": 260000,
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -713,9 +712,9 @@
|
||||
"Type_054A": {
|
||||
"name": "",
|
||||
"coalition": "red",
|
||||
"type": "Frigate",
|
||||
"type": "Combatants",
|
||||
"era": "Modern",
|
||||
"label": "054A FFG-538 Yantai",
|
||||
"label": "Type 54A Yantai (Frigate)",
|
||||
"shortLabel": "Type 54A",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
@ -872,15 +871,16 @@
|
||||
},
|
||||
"acquisitionRange": 160000,
|
||||
"engagementRange": 45000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "35nm >50,000ft range"
|
||||
},
|
||||
"Type_071": {
|
||||
"name": "Type_071",
|
||||
"coalition": "red",
|
||||
"type": "Transport",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Modern",
|
||||
"label": "Type 071",
|
||||
"label": "Type 071 (Transport dock)",
|
||||
"shortLabel": "Type 071",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
@ -925,6 +925,7 @@
|
||||
},
|
||||
"acquisitionRange": 300000,
|
||||
"engagementRange": 150000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -935,7 +936,7 @@
|
||||
"coalition": "red",
|
||||
"type": "Submarine",
|
||||
"era": "Modern",
|
||||
"label": "Type 093",
|
||||
"label": "Type 093 (Shang)",
|
||||
"shortLabel": "Type 093",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
@ -948,6 +949,7 @@
|
||||
},
|
||||
"acquisitionRange": 40000,
|
||||
"engagementRange": 40000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -956,10 +958,10 @@
|
||||
"USS_Arleigh_Burke_IIa": {
|
||||
"name": "USS_Arleigh_Burke_IIa",
|
||||
"coalition": "blue",
|
||||
"type": "Destroyer",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "DDG Arleigh Burke lla",
|
||||
"shortLabel": "DDG Arleigh Burke",
|
||||
"label": "Arleigh Burke Class (Destroyer)",
|
||||
"shortLabel": "Arleigh Burke Class (Destroyer)",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
@ -1064,6 +1066,7 @@
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000,
|
||||
"abilities": "",
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"canTargetPoint": true,
|
||||
"canRearm": false
|
||||
@ -1080,6 +1083,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 18000,
|
||||
"engagementRange": 5000,
|
||||
"tags": "",
|
||||
"description": "ARA Vienticinco de Mayo. Conventional CATOBAR carrier",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1089,14 +1093,15 @@
|
||||
"name": "hms_invincible",
|
||||
"coalition": "blue",
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Mid Cold War",
|
||||
"label": "HMS Invincible (R05)",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Invincible",
|
||||
"shortLabel": "HMS Invincible",
|
||||
"range": "",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 100000,
|
||||
"engagementRange": 74000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1105,8 +1110,8 @@
|
||||
"leander-gun-achilles": {
|
||||
"name": "leander-gun-achilles",
|
||||
"coalition": "blue",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Achilles (F12)",
|
||||
"shortLabel": "HMS Achilles",
|
||||
"range": "",
|
||||
@ -1114,6 +1119,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 180000,
|
||||
"engagementRange": 8000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1122,8 +1128,8 @@
|
||||
"leander-gun-andromeda": {
|
||||
"name": "leander-gun-andromeda",
|
||||
"coalition": "blue",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Andromeda (F57)",
|
||||
"shortLabel": "HMS Andromeda",
|
||||
"range": "",
|
||||
@ -1131,6 +1137,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 180000,
|
||||
"engagementRange": 140000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1139,8 +1146,8 @@
|
||||
"leander-gun-ariadne": {
|
||||
"name": "leander-gun-ariadne",
|
||||
"coalition": "blue",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "HMS Ariadne (F72)",
|
||||
"shortLabel": "HMS Ariadne",
|
||||
"range": "",
|
||||
@ -1148,6 +1155,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1156,8 +1164,8 @@
|
||||
"leander-gun-condell": {
|
||||
"name": "leander-gun-condell",
|
||||
"coalition": "",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Almirante Condell PFG-06",
|
||||
"shortLabel": "Almirante Condell",
|
||||
"range": "",
|
||||
@ -1165,6 +1173,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1173,8 +1182,8 @@
|
||||
"leander-gun-lynch": {
|
||||
"name": "leander-gun-lynch",
|
||||
"coalition": "",
|
||||
"type": "Frigate",
|
||||
"era": "Mid Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "CNS Almirante Lynch (PFG-07)",
|
||||
"shortLabel": "CNS Almirante Lynch",
|
||||
"range": "",
|
||||
@ -1182,6 +1191,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 180000,
|
||||
"engagementRange": 140000,
|
||||
"tags": "",
|
||||
"description": "Ship",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1191,7 +1201,7 @@
|
||||
"name": "santafe",
|
||||
"coalition": "",
|
||||
"type": "Submarine",
|
||||
"era": "Early Cold War",
|
||||
"era": "WW2",
|
||||
"label": "ARA Santa Fe S-21",
|
||||
"shortLabel": "ARA Santa",
|
||||
"range": "",
|
||||
@ -1199,6 +1209,7 @@
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1210,36 +1221,21 @@
|
||||
"era": "",
|
||||
"label": "Boat Armed Hi-speed",
|
||||
"shortLabel": "Boat Armed Hi-speed",
|
||||
"type": "Speedboat",
|
||||
"type": "Fast Attack Craft",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 5000,
|
||||
"engagementRange": 1000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
"canRearm": false
|
||||
},
|
||||
"VINSON": {
|
||||
"name": "VINSON",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"label": "CVN-70 Carl Vinson",
|
||||
"shortLabel": "CVN-70 Carl Vinson",
|
||||
"type": "Aircraft Carrier",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 30000,
|
||||
"engagementRange": 15000,
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"PERRY": {
|
||||
"name": "perry",
|
||||
"coalition": "blue",
|
||||
"type": "Frigate",
|
||||
"type": "Combatants",
|
||||
"era": "Mid Cold War",
|
||||
"label": "Oliver H. Perry",
|
||||
"shortLabel": "Oliver H. Perry",
|
||||
@ -1289,13 +1285,18 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 150000,
|
||||
"engagementRange": 100000
|
||||
"engagementRange": 100000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"ALBATROS": {
|
||||
"name": "albatros",
|
||||
"coalition": "red",
|
||||
"type": "Frigate",
|
||||
"era": "Early Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "Modern",
|
||||
"label": "Albatros (Grisha-5)",
|
||||
"shortLabel": "Albatros",
|
||||
"range": "",
|
||||
@ -1340,7 +1341,12 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 30000,
|
||||
"engagementRange": 16000
|
||||
"engagementRange": 16000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"KUZNECOW": {
|
||||
"name": "kuznecow",
|
||||
@ -1348,17 +1354,22 @@
|
||||
"type": "Aircraft Carrier",
|
||||
"era": "Late Cold War",
|
||||
"label": "Admiral Kuznetsov",
|
||||
"shortLabel": "Admiral Kuznetsov",
|
||||
"shortLabel": "AK",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 25000,
|
||||
"engagementRange": 12000
|
||||
"engagementRange": 12000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"MOLNIYA": {
|
||||
"name": "molniya",
|
||||
"coalition": "",
|
||||
"type": "Corvette",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Molniya (Tarantul-3)",
|
||||
"shortLabel": "Molniya",
|
||||
@ -1380,12 +1391,17 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 21000,
|
||||
"engagementRange": 2000
|
||||
"engagementRange": 2000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"MOSCOW": {
|
||||
"name": "moscow",
|
||||
"coalition": "red",
|
||||
"type": "Cruiser",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Moscow",
|
||||
"shortLabel": "Moscow",
|
||||
@ -1411,12 +1427,17 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 160000,
|
||||
"engagementRange": 75000
|
||||
"engagementRange": 75000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"NEUSTRASH": {
|
||||
"name": "neustrash",
|
||||
"coalition": "red",
|
||||
"type": "Frigate",
|
||||
"type": "Combatants",
|
||||
"era": "Late Cold War",
|
||||
"label": "Neustrashimy",
|
||||
"shortLabel": "Neustrashimy",
|
||||
@ -1424,19 +1445,25 @@
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 27000,
|
||||
"engagementRange": 12000
|
||||
"engagementRange": 12000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"PIOTR": {
|
||||
"name": "PIOTR",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"label": "Battlecruiser 1144.2 Pyotr Velikiy",
|
||||
"shortLabel": "Battlecruiser 1144.2 Pyotr Velikiy",
|
||||
"type": "Cruiser",
|
||||
"coalition": "red",
|
||||
"era": "Late Cold War",
|
||||
"label": "Pyotr Velikiy (Battlecruiser)",
|
||||
"shortLabel": "Pyotr Velikiy",
|
||||
"type": "Combatants",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 250000,
|
||||
"engagementRange": 190000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1445,20 +1472,25 @@
|
||||
"REZKY": {
|
||||
"name": "Rezky (Krivak-2)",
|
||||
"coalition": "red",
|
||||
"type": "Frigate",
|
||||
"era": "Early Cold War",
|
||||
"type": "Combatants",
|
||||
"era": "WW2",
|
||||
"label": "Rezky (Krivak-2)",
|
||||
"shortLabel": "Rezky",
|
||||
"range": "Short",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 30000,
|
||||
"engagementRange": 16000
|
||||
"engagementRange": 16000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"ELNYA": {
|
||||
"name": "elnya",
|
||||
"coalition": "red",
|
||||
"type": "Tanker",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Late Cold War",
|
||||
"label": "Elnya tanker",
|
||||
"shortLabel": "Elnya tanker",
|
||||
@ -1480,7 +1512,12 @@
|
||||
}
|
||||
},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"Dry-cargo ship-2": {
|
||||
"name": "Dry-cargo ship-2",
|
||||
@ -1488,11 +1525,12 @@
|
||||
"era": "",
|
||||
"label": "Cargo Ivanov",
|
||||
"shortLabel": "Cargo Ivanov",
|
||||
"type": "Cargoship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1504,11 +1542,12 @@
|
||||
"era": "",
|
||||
"label": "Bulker Yakushev",
|
||||
"shortLabel": "Bulker Yakushev",
|
||||
"type": "Cargoship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1517,7 +1556,7 @@
|
||||
"ZWEZDNY": {
|
||||
"name": "zwezdny",
|
||||
"coalition": "",
|
||||
"type": "Civilian Boat",
|
||||
"type": "Cargo/Transport",
|
||||
"era": "Modern",
|
||||
"label": "Zwezdny",
|
||||
"shortLabel": "Zwezdny",
|
||||
@ -1525,32 +1564,43 @@
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"KILO": {
|
||||
"name": "kilo",
|
||||
"coalition": "red",
|
||||
"type": "Submarine",
|
||||
"era": "Late Cold War",
|
||||
"era": "Mid Cold War",
|
||||
"label": "Project 636 Varshavyanka Basic",
|
||||
"shortLabel": "Varshavyanka Basic",
|
||||
"range": "Medium",
|
||||
"filename": "",
|
||||
"enabled": true,
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
"canRearm": false
|
||||
},
|
||||
"IMPROVED_KILO": {
|
||||
"name": "IMPROVED_KILO",
|
||||
"coalition": "",
|
||||
"coalition": "red",
|
||||
"era": "",
|
||||
"label": "SSK 636 Improved Kilo",
|
||||
"shortLabel": "SSK 636 Improved Kilo",
|
||||
"shortLabel": "Kilo",
|
||||
"type": "Submarine",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1561,12 +1611,13 @@
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"label": "SSK 641B Tango",
|
||||
"shortLabel": "SSK 641B Tango",
|
||||
"shortLabel": "Tango",
|
||||
"type": "Submarine",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 0,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1574,8 +1625,8 @@
|
||||
},
|
||||
"Forrestal": {
|
||||
"name": "Forrestal",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "blue",
|
||||
"era": "Early Cold War",
|
||||
"label": "CV-59 Forrestal",
|
||||
"shortLabel": "CV-59 Forrestal",
|
||||
"type": "Aircraft Carrier",
|
||||
@ -1583,6 +1634,7 @@
|
||||
"liveries": {},
|
||||
"acquisitionRange": 50000,
|
||||
"engagementRange": 25000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": false,
|
||||
@ -1590,15 +1642,16 @@
|
||||
},
|
||||
"LST_Mk2": {
|
||||
"name": "LST_Mk2",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "blue",
|
||||
"era": "WW2",
|
||||
"label": "LST Mk.II",
|
||||
"shortLabel": "LST Mk.II",
|
||||
"type": "Landing Ship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 4000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1606,15 +1659,16 @@
|
||||
},
|
||||
"USS_Samuel_Chase": {
|
||||
"name": "USS_Samuel_Chase",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "blue",
|
||||
"era": "WW2",
|
||||
"label": "LS Samuel Chase",
|
||||
"shortLabel": "LS Samuel Chase",
|
||||
"type": "Landing Ship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 0,
|
||||
"engagementRange": 7000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1622,15 +1676,16 @@
|
||||
},
|
||||
"Higgins_boat": {
|
||||
"name": "Higgins_boat",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "blue",
|
||||
"era": "WW2",
|
||||
"label": "Boat LCVP Higgins",
|
||||
"shortLabel": "Boat LCVP Higgins",
|
||||
"type": "Landing Ship",
|
||||
"type": "Cargo/Transport",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 3000,
|
||||
"engagementRange": 1000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1638,15 +1693,16 @@
|
||||
},
|
||||
"Uboat_VIIC": {
|
||||
"name": "Uboat_VIIC",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"label": "U-boat VIIC U-flak",
|
||||
"shortLabel": "U-boat VIIC U-flak",
|
||||
"coalition": "red",
|
||||
"era": "WW2",
|
||||
"label": "U-boat VIIC",
|
||||
"shortLabel": "U-boat",
|
||||
"type": "Submarine",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 20000,
|
||||
"engagementRange": 4000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
@ -1654,15 +1710,16 @@
|
||||
},
|
||||
"Schnellboot_type_S130": {
|
||||
"name": "Schnellboot_type_S130",
|
||||
"coalition": "",
|
||||
"era": "",
|
||||
"coalition": "red",
|
||||
"era": "WW2",
|
||||
"label": "Boat Schnellboot type S130",
|
||||
"shortLabel": "Boat Schnellboot type S130",
|
||||
"type": "Torpedo Boat",
|
||||
"type": "Fast Attack Craft",
|
||||
"enabled": true,
|
||||
"liveries": {},
|
||||
"acquisitionRange": 10000,
|
||||
"engagementRange": 4000,
|
||||
"tags": "",
|
||||
"description": "",
|
||||
"abilities": "",
|
||||
"canTargetPoint": true,
|
||||
|
||||
@ -4,6 +4,8 @@
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.airbase-icon[data-coalition="red"] svg * {
|
||||
|
||||
@ -4,6 +4,8 @@
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.bullseye-icon[data-coalition="red"] svg * {
|
||||
|
||||
@ -50,6 +50,11 @@
|
||||
width: var(--unit-width);
|
||||
}
|
||||
|
||||
.unit-icon svg {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
[data-is-selected] .unit-icon::before {
|
||||
background-color: var(--unit-spotlight-fill);
|
||||
border-radius: 50%;
|
||||
|
||||
@ -61,9 +61,13 @@
|
||||
|
||||
.contextmenu-advanced-options-toggle:after,
|
||||
.contextmenu-metadata-toggle:after {
|
||||
content: url(/resources/theme/images/icons/chevron-down.svg);
|
||||
content: "";
|
||||
margin-left: auto;
|
||||
margin-top: auto;
|
||||
background-image: url(/resources/theme/images/icons/chevron-down.svg);
|
||||
background-size: 100% 100%;
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
}
|
||||
|
||||
.contextmenu-advanced-options-toggle.is-open:after,
|
||||
@ -407,84 +411,124 @@
|
||||
|
||||
/* Buttons */
|
||||
#center-map::before {
|
||||
content: url("/resources/theme/images/icons/arrows-to-eye-solid.svg");
|
||||
background-image: url("/resources/theme/images/icons/arrows-to-eye-solid.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#refuel::before {
|
||||
content: url("/resources/theme/images/icons/fuel.svg");
|
||||
background-image: url("/resources/theme/images/icons/fuel.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#attack::before {
|
||||
content: url("/resources/theme/images/icons/sword.svg");
|
||||
background-image: url("/resources/theme/images/icons/sword.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#bomb::before {
|
||||
content: url("/resources/theme/images/icons/crosshairs-solid.svg");
|
||||
background-image: url("/resources/theme/images/icons/crosshairs-solid.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#carpet-bomb::before {
|
||||
content: url("/resources/theme/images/icons/explosion-solid.svg");
|
||||
background-image: url("/resources/theme/images/icons/explosion-solid.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#fire-at-area::before {
|
||||
content: url("/resources/theme/images/icons/crosshairs-solid.svg");
|
||||
background-image: url("/resources/theme/images/icons/crosshairs-solid.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#simulate-fire-fight::before {
|
||||
content: url("/resources/theme/images/icons/crosshairs-solid.svg");
|
||||
background-image: url("/resources/theme/images/icons/crosshairs-solid.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#follow::before {
|
||||
content: url("/resources/theme/images/icons/follow.svg");
|
||||
background-image: url("/resources/theme/images/icons/follow.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#scenic-aaa::before {
|
||||
content: url("/resources/theme/images/icons/scenic.svg");
|
||||
background-image: url("/resources/theme/images/icons/scenic.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#miss-aaa::before {
|
||||
content: url("/resources/theme/images/icons/miss.svg");
|
||||
background-image: url("/resources/theme/images/icons/miss.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#group-ground::before {
|
||||
content: url("/resources/theme/images/icons/group-ground.svg");
|
||||
background-image: url("/resources/theme/images/icons/group-ground.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#group-navy::before {
|
||||
content: url("/resources/theme/images/icons/group-navy.svg");
|
||||
background-image: url("/resources/theme/images/icons/group-navy.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#land-at-point::before {
|
||||
content: url("/resources/theme/images/icons/land-at-point.svg");
|
||||
background-image: url("/resources/theme/images/icons/land-at-point.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#trail::before {
|
||||
content: url("/resources/theme/images/icons/trail.svg");
|
||||
background-image: url("/resources/theme/images/icons/trail.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#echelon-lh::before {
|
||||
content: url("/resources/theme/images/icons/echelon-lh.svg");
|
||||
background-image: url("/resources/theme/images/icons/echelon-lh.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#echelon-rh::before {
|
||||
content: url("/resources/theme/images/icons/echelon-rh.svg");
|
||||
background-image: url("/resources/theme/images/icons/echelon-rh.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#line-abreast-rh::before,
|
||||
#line-abreast-lh::before {
|
||||
content: url("/resources/theme/images/icons/line-abreast.svg");
|
||||
background-image: url("/resources/theme/images/icons/line-abreast.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#front::before {
|
||||
content: url("/resources/theme/images/icons/front.svg");
|
||||
background-image: url("/resources/theme/images/icons/front.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#diamond::before {
|
||||
content: url("/resources/theme/images/icons/diamond.svg");
|
||||
background-image: url("/resources/theme/images/icons/diamond.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#custom::before {
|
||||
content: url("/resources/theme/images/icons/custom.svg");
|
||||
background-image: url("/resources/theme/images/icons/custom.svg");
|
||||
content: "";
|
||||
background-size: 20px 20px;
|
||||
}
|
||||
|
||||
#custom-formation-dialog {
|
||||
|
||||
@ -68,12 +68,16 @@
|
||||
display: none;
|
||||
}
|
||||
|
||||
#unit-visibility-control > div:nth-child(4),
|
||||
#coalition-visibility-control {
|
||||
#unit-visibility-control > div:nth-child(4) {
|
||||
border-left: 2px solid white;
|
||||
padding-left: 12px;
|
||||
}
|
||||
|
||||
#unit-visibility-control > div:last-child {
|
||||
border-right: 2px solid white;
|
||||
padding-right: 12px;
|
||||
}
|
||||
|
||||
@media (max-width: 1145px) {
|
||||
#toolbar-container {
|
||||
flex-direction: column;
|
||||
|
||||
@ -27,7 +27,6 @@
|
||||
display: block;
|
||||
}
|
||||
|
||||
|
||||
#log-panel-header-right {
|
||||
align-items: center;
|
||||
column-gap: 16px;
|
||||
@ -35,6 +34,11 @@
|
||||
flex-flow: row nowrap;
|
||||
}
|
||||
|
||||
#log-panel-header-right svg {
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
}
|
||||
|
||||
#server-status-panel abbr {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
@ -6,60 +6,69 @@ body.feature-forceShowUnitControlPanel #unit-control-panel {
|
||||
#roe-buttons-container button,
|
||||
#reaction-to-threat-buttons-container button,
|
||||
#emissions-countermeasures-buttons-container button,
|
||||
#shots-scatter-buttons-container button
|
||||
#shots-intensity-buttons-container button {
|
||||
align-items: center;
|
||||
background-color: transparent;
|
||||
border: 1px solid var(--accent-light-blue);
|
||||
display: flex;
|
||||
height: 30px;
|
||||
justify-content: center;
|
||||
width: 30px;
|
||||
#shots-scatter-buttons-container button #shots-intensity-buttons-container button {
|
||||
align-items: center;
|
||||
background-color: transparent;
|
||||
border: 1px solid var(--accent-light-blue);
|
||||
display: flex;
|
||||
height: 30px;
|
||||
justify-content: center;
|
||||
width: 30px;
|
||||
}
|
||||
|
||||
#reaction-to-threat-buttons-container button:not(:first-child) svg {
|
||||
width: 150%;
|
||||
margin: -5px;
|
||||
width: 150%;
|
||||
margin: -5px;
|
||||
}
|
||||
|
||||
#unit-control-panel .ol-option-button button {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
}
|
||||
|
||||
#unit-control-panel .ol-option-button svg {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
#unit-control-panel .ol-option-button button.selected {
|
||||
background-color: white;
|
||||
border-color: white;
|
||||
background-color: white;
|
||||
border-color: white;
|
||||
}
|
||||
|
||||
#unit-control-panel .ol-option-button button.selected svg * {
|
||||
fill: var(--background-steel);
|
||||
stroke: var(--background-steel);
|
||||
fill: var(--background-steel);
|
||||
stroke: var(--background-steel);
|
||||
}
|
||||
|
||||
#rapid-controls {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
row-gap: 5px;
|
||||
height: fit-content;
|
||||
width: fit-content;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
row-gap: 5px;
|
||||
height: fit-content;
|
||||
width: fit-content;
|
||||
}
|
||||
|
||||
#rapid-controls button {
|
||||
padding: 4px;
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
#rapid-controls button.pulse {
|
||||
animation: pulse 1.5s linear infinite;
|
||||
animation: pulse 1.5s linear infinite;
|
||||
}
|
||||
|
||||
#rapid-controls svg {
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
fill: white;
|
||||
stroke: white;
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
fill: white;
|
||||
stroke: white;
|
||||
}
|
||||
|
||||
#rapid-controls button:before {
|
||||
display: inline-block;
|
||||
filter: invert(100%);
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
display: inline-block;
|
||||
filter: invert(100%);
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
}
|
||||
|
||||
#unit-control-panel {
|
||||
@ -109,7 +118,7 @@ body.feature-forceShowUnitControlPanel #unit-control-panel {
|
||||
width: fit-content;
|
||||
}
|
||||
|
||||
#unit-control-panel:not(:hover)>*:nth-child(2),
|
||||
#unit-control-panel:not(:hover)>*:nth-child(2),
|
||||
#unit-control-panel:not(:hover)>*:nth-child(3) {
|
||||
display: none;
|
||||
}
|
||||
@ -196,7 +205,7 @@ body.feature-forceShowUnitControlPanel #unit-control-panel {
|
||||
}
|
||||
|
||||
#advanced-settings-dialog>.ol-dialog-content>div input[type="number"] {
|
||||
width: 60px;
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
#advanced-settings-dialog hr {
|
||||
@ -266,7 +275,6 @@ body.feature-forceShowUnitControlPanel #unit-control-panel {
|
||||
width: 40px;
|
||||
}
|
||||
|
||||
|
||||
.ol-slider-value {
|
||||
color: var(--accent-light-blue);
|
||||
cursor: pointer;
|
||||
@ -276,13 +284,15 @@ body.feature-forceShowUnitControlPanel #unit-control-panel {
|
||||
|
||||
.switch-control {
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
display: flex;
|
||||
width: 100%;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.switch-control h4 {
|
||||
margin: 0px;
|
||||
margin: 0px !important;
|
||||
padding: 0px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
@ -303,30 +313,30 @@ body.feature-forceShowUnitControlPanel #unit-control-panel {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#advanced-settings-div > button {
|
||||
#advanced-settings-div>button {
|
||||
background-color: var(--background-grey);
|
||||
box-shadow: 0px 2px 5px #000A;
|
||||
font-size:13px;
|
||||
box-shadow: 0px 2px 5px #000A;
|
||||
font-size: 13px;
|
||||
height: 40px;
|
||||
padding:0 20px;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
#delete-options {
|
||||
font-size:13px;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
#delete-options.ol-select > .ol-select-value:after {
|
||||
#delete-options.ol-select>.ol-select-value:after {
|
||||
content: "";
|
||||
}
|
||||
|
||||
#delete-options.ol-select > .ol-select-value svg {
|
||||
#delete-options.ol-select>.ol-select-value svg {
|
||||
background-color: transparent;
|
||||
position: absolute;
|
||||
right:2px;
|
||||
translate:0 1px;
|
||||
right: 2px;
|
||||
translate: 0 1px;
|
||||
}
|
||||
|
||||
#delete-options.ol-select > .ol-select-value svg * {
|
||||
#delete-options.ol-select>.ol-select-value svg * {
|
||||
fill: var(--primary-red);
|
||||
}
|
||||
|
||||
@ -334,21 +344,21 @@ body.feature-forceShowUnitControlPanel #unit-control-panel {
|
||||
background-color: var(--background-steel);
|
||||
}
|
||||
|
||||
#delete-options.ol-select > .ol-select-value:hover,
|
||||
#delete-options .ol-select-options > div:not(.hr):hover,
|
||||
#delete-options .ol-select-options > div:not(.hr):hover button,
|
||||
#delete-options .ol-select-options > div hr {
|
||||
#delete-options.ol-select>.ol-select-value:hover,
|
||||
#delete-options .ol-select-options>div:not(.hr):hover,
|
||||
#delete-options .ol-select-options>div:not(.hr):hover button,
|
||||
#delete-options .ol-select-options>div hr {
|
||||
background-color: var(--background-grey);
|
||||
}
|
||||
|
||||
#delete-options .ol-select-options > div:first-of-type {
|
||||
margin-top:12px;
|
||||
padding-top:0;
|
||||
#delete-options .ol-select-options>div:first-of-type {
|
||||
margin-top: 12px;
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
#delete-options .ol-select-options > div:last-of-type {
|
||||
margin-bottom:12px;
|
||||
padding-bottom:0;
|
||||
#delete-options .ol-select-options>div:last-of-type {
|
||||
margin-bottom: 12px;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
#delete-options button {
|
||||
@ -389,4 +399,4 @@ body.feature-forceShowUnitControlPanel #unit-control-panel {
|
||||
#advanced-settings-dialog:not([data-show-radio]) #radio-options,
|
||||
#advanced-settings-dialog:not([data-show-air-unit-checkboxes]) .air-unit-checkbox {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@ -146,12 +146,12 @@
|
||||
}
|
||||
|
||||
#fuel-percentage::before {
|
||||
content: url("/resources/theme/images/icons/fuel.svg");
|
||||
content: "";
|
||||
background-image: url("/resources/theme/images/icons/fuel.svg");
|
||||
background-size: 16px 16px;
|
||||
display: inline-block;
|
||||
filter: invert(100%);
|
||||
height: 16px;
|
||||
margin-right: 6px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
#fuel-percentage::after {
|
||||
|
||||
@ -206,9 +206,17 @@ button svg.fill-coalition[data-coalition="red"] * {
|
||||
}
|
||||
|
||||
.ol-select:not(.ol-select-image)>.ol-select-value:after {
|
||||
content: url("/resources/theme/images/icons/chevron-down.svg");
|
||||
background-image: url("/resources/theme/images/icons/chevron-down.svg");
|
||||
content: "";
|
||||
position: absolute;
|
||||
right: 10px;
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
|
||||
.ol-select:not(.ol-select-image)>.ol-select-value.ol-select-warning:after {
|
||||
background-image: url("/resources/theme/images/icons/chevron-down-warning.svg") !important;
|
||||
}
|
||||
|
||||
.ol-select.is-open:not(.ol-select-image)>.ol-select-value:after {
|
||||
@ -441,6 +449,7 @@ nav.ol-panel> :last-child {
|
||||
-webkit-filter: invert(100%);
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
|
||||
.ol-panel .ol-group-button-toggle button.off::before {
|
||||
@ -1328,7 +1337,7 @@ dl.ol-data-grid dd {
|
||||
align-content: center;
|
||||
border-top: 1px solid var(--background-grey);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
justify-content: flex-end;
|
||||
padding-top: 15px;
|
||||
row-gap: 10px;
|
||||
}
|
||||
@ -1362,6 +1371,7 @@ dl.ol-data-grid dd {
|
||||
height: 16px;
|
||||
margin-right: 10px;
|
||||
width: 16px;
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
|
||||
.ol-checkbox input[type="checkbox"]:disabled:before {
|
||||
|
||||
@ -0,0 +1,3 @@
|
||||
<svg width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M6.37109 7.37891C6.69922 7.73438 7.27344 7.73438 7.60156 7.37891L12.8516 2.12891C13.207 1.80078 13.207 1.22656 12.8516 0.898438C12.5234 0.542969 11.9492 0.542969 11.6211 0.898438L7 5.51953L2.35156 0.898438C2.02344 0.542969 1.44922 0.542969 1.12109 0.898438C0.765625 1.22656 0.765625 1.80078 1.12109 2.12891L6.37109 7.37891Z" fill="#ff5858"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 452 B |
BIN
client/public/themes/olympus/images/parrot/parrot.png
Normal file
BIN
client/public/themes/olympus/images/parrot/parrot.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 41 KiB |
54
client/public/themes/parrot/images/parrot.svg
Normal file
54
client/public/themes/parrot/images/parrot.svg
Normal file
@ -0,0 +1,54 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 460 460" xml:space="preserve">
|
||||
<g id="XMLID_2582_">
|
||||
<path id="XMLID_4_" style="fill:#871A27;" d="M353.16,459.97L353.16,459.97c-32.138-3.383-61.944-18.336-83.849-42.066
|
||||
L65.784,206.343c-6.885-7.157-3.266-19.083,6.439-21.217l26.729-5.878l258.429,272.378
|
||||
C360.487,455.023,357.74,460.452,353.16,459.97z"/>
|
||||
<path id="XMLID_2108_" style="fill:#A52531;" d="M403.222,459.97L403.222,459.97c-32.138-3.383-61.944-18.336-83.849-42.066
|
||||
L100.124,190l48.891-10.752l258.429,272.378C410.549,455.023,407.802,460.452,403.222,459.97z"/>
|
||||
<path id="XMLID_2018_" style="fill:#CC3248;" d="M454.455,459.97L454.455,459.97c-32.138-3.383-61.944-18.336-83.849-42.066
|
||||
L151.357,190l48.891-10.752l258.429,272.378C461.782,455.023,459.035,460.452,454.455,459.97z"/>
|
||||
<path id="XMLID_2391_" style="fill:#C1A991;" d="M280.347,380h-80.099l-9.48,37.873C188.984,425,182.572,430,175.217,430
|
||||
s-13.767-5-15.551-12.127L150.186,380h-0.277c-40.008,0-73.881-29.485-79.348-69.069L44.112,119.414
|
||||
C30.376,116.668,20.025,104.544,20.025,90H0c0-20.678,15.692-37.69,35.817-39.781C35.079,22.989,56.998,0,84.812,0l0,0
|
||||
c21.102,0,39.837,13.487,46.51,33.481l0.617,1.848c8.632,25.864,26.455,47.418,49.597,61.877
|
||||
c8.184,5.113,15.785,13.683,19.63,27.974L280.347,380z"/>
|
||||
<path id="XMLID_2087_" style="fill:#473C3F;" d="M180.223,420v10v10v5c0,8.284-6.724,15-15.019,15h-50.062
|
||||
c-2.765,0-5.006-2.239-5.006-5l0,0c0-8.284,6.724-15,15.019-15h35.043c5.53,0,10.012-4.477,10.012-10v-10H180.223z"/>
|
||||
<path id="XMLID_1701_" style="fill:#9B1C2B;" d="M280.347,380h-80.099l-9.48,37.873C188.984,425,182.572,430,175.217,430
|
||||
s-13.767-5-15.551-12.127L150.186,380h-0.277c-40.008,0-73.881-29.485-79.348-69.069L44.112,119.414L30.382,90H52.77
|
||||
c4.803,0,9.541-1.117,13.837-3.262l16.413-8.197c10.482-5.234,17.103-15.935,17.103-27.639C100.124,33.835,86.272,20,69.184,20
|
||||
H45.307C54.179,7.937,68.475,0,84.812,0l0,0c21.102,0,39.837,13.487,46.51,33.481l0.617,1.848
|
||||
c8.632,25.864,26.455,47.418,49.597,61.877c8.184,5.113,15.785,13.683,19.63,27.974L280.347,380z"/>
|
||||
<path id="XMLID_2389_" style="fill:#8C735D;" d="M40.05,90l4.062,29.414C30.376,116.668,20.025,104.544,20.025,90H0
|
||||
c0-3.454,0.447-6.803,1.27-10h37.667L40.05,90z"/>
|
||||
<path id="XMLID_1631_" style="fill:#AF8F6D;" d="M40.05,90H0c0-20.676,15.688-37.686,35.81-39.781
|
||||
c0.037,1.375,0.121,2.759,0.276,4.154L40.05,90z"/>
|
||||
<path id="XMLID_2088_" style="fill:#66313A;" d="M70.087,45c0,2.761-2.241,5-5.006,5s-5.006-2.239-5.006-5s2.241-5,5.006-5
|
||||
C67.845,40,70.087,42.239,70.087,45z"/>
|
||||
<path id="XMLID_1864_" style="fill:#720C1F;" d="M150.186,380h50.062l-5.006,20h-40.049L150.186,380z"/>
|
||||
<path id="XMLID_1836_" style="fill:#720C1F;" d="M331.261,397.796L246.772,194.5c-19.25-46.319-62.419-73.992-106.431-68.225
|
||||
l-33.801,4.429c-6.283,0.823-10.071,7.378-7.641,13.223l82.08,197.501c19.25,46.32,62.419,73.992,106.431,68.226l40.03-5.245
|
||||
C330.582,403.996,332.476,400.719,331.261,397.796z"/>
|
||||
<path id="XMLID_1924_" style="fill:#871A27;" d="M349.271,380.344l-39.554,8.084c-43.488,8.888-88.523-15.638-111.033-60.467
|
||||
l-95.979-191.149c-2.841-5.657,0.469-12.465,6.677-13.734l33.398-6.826c43.488-8.888,88.523,15.638,111.033,60.468l98.796,196.758
|
||||
C354.03,376.305,352.375,379.709,349.271,380.344z"/>
|
||||
<path id="XMLID_1905_" style="fill:#A52531;" d="M351.863,378.865c-39.327,2.272-78.009-21.643-98.331-62.115l-73.749-146.618
|
||||
c-1.957-3.897-0.994-8.339,1.823-11.141c37.969-0.535,74.788,23.122,94.439,62.258l76.565,152.227
|
||||
C353.548,375.345,353.139,377.459,351.863,378.865z"/>
|
||||
<path id="XMLID_1810_" style="fill:#82542E;" d="M349.27,380.344L310.841,385c-43.488,8.888-89.648-12.21-112.158-57.04
|
||||
l-66.414-132.268c34.538,30.088,78.926,43.67,122.276,34.81l23.828-4.87l74.236,147.845
|
||||
C354.029,376.305,352.374,379.709,349.27,380.344z"/>
|
||||
<path id="XMLID_1705_" style="fill:#684627;" d="M351.864,378.865c-0.656,0.723-1.538,1.263-2.592,1.479l-39.307,6.781
|
||||
c-43.488,8.888-88.77-14.335-111.28-59.165l-66.414-132.268c22.958,20,50.271,32.696,78.737,36.365l42.526,84.693
|
||||
C273.856,357.223,312.537,381.137,351.864,378.865z"/>
|
||||
<path id="XMLID_1636_" style="fill:#385056;" d="M349.27,380.344l-39.554,8.084c-43.488,8.888-88.523-15.638-111.033-60.467
|
||||
l-21.17-42.161c28.416,19.045,62.146,26.827,95.205,20.07l41.667-8.516l38.223,76.123
|
||||
C354.029,376.305,352.374,379.709,349.27,380.344z"/>
|
||||
<path id="XMLID_1807_" style="fill:#446772;" d="M249.716,308.257c7.802-0.018,15.644-0.792,23.45-2.388l41.667-8.516
|
||||
l38.223,76.123c0.594,1.184,0.644,2.466,0.281,3.606c-0.209,0.65-0.552,1.254-1.012,1.765c-0.005,0.006-0.01,0.012-0.016,0.018
|
||||
c-39.326,2.271-78.007-21.643-98.329-62.115L249.716,308.257z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.7 KiB |
109
client/public/themes/parrot/theme.css
Normal file
109
client/public/themes/parrot/theme.css
Normal file
@ -0,0 +1,109 @@
|
||||
:root {
|
||||
/** Colours **/
|
||||
|
||||
/*** Coalition: neutral ***/
|
||||
--primary-neutral: #949ba7;
|
||||
--secondary-neutral-outline: #111111;
|
||||
--secondary-neutral-text: #111111;
|
||||
--unit-background-neutral: #CFD9E8;
|
||||
|
||||
/*** Coalition: blue ***/
|
||||
--primary-blue: #247be2;
|
||||
--secondary-blue-outline: #082e44;
|
||||
--secondary-blue-text: #017DC1;
|
||||
--unit-background-blue: #3BB9FF;
|
||||
|
||||
/*** Coalition: red ***/
|
||||
--primary-red: #ff5858;
|
||||
--secondary-red-outline: #262222;
|
||||
--secondary-red-text: #D42121;
|
||||
--unit-background-red: #FF5858;
|
||||
|
||||
/*** UI Colours **/
|
||||
--accent-amber: #ffd828;
|
||||
--accent-green: #8bff63;
|
||||
--accent-light-blue: #5ca7ff;
|
||||
--accent-dark-blue: #017DC1;
|
||||
--transparent-accent-light-blue: rgba(92, 167, 255, .33);
|
||||
--accent-light-red: #F5B6B6;
|
||||
|
||||
--background-grey: #3d4651;
|
||||
--background-slate-blue: #363c43;
|
||||
--background-offwhite: #f2f2f3;
|
||||
--background-steel: #202831;
|
||||
|
||||
--secondary-dark-steel: #181e25;
|
||||
--secondary-gunmetal-grey: #2f2f2f;
|
||||
--secondary-lighter-grey: #949ba7;
|
||||
--secondary-light-grey: #797e83;
|
||||
--secondary-semitransparent-white: #FFFFFFAA;
|
||||
--secondary-transparent-white: #FFFFFF30;
|
||||
--secondary-yellow: #ffd46893;
|
||||
|
||||
--background-hover: #f2f2f333;
|
||||
|
||||
--nav-text: #ECECEC;
|
||||
|
||||
--ol-select-secondary: #545F6C;
|
||||
--ol-switch-off:#686868;
|
||||
--ol-switch-undefined:#383838;
|
||||
|
||||
/*** General border radii **/
|
||||
--border-radius-xs: 2px;
|
||||
--border-radius-sm: 5px;
|
||||
--border-radius-md: 10px;
|
||||
--border-radius-lg: 15px;
|
||||
|
||||
/*** Fonts **/
|
||||
--font-weight-bolder: 600;
|
||||
|
||||
/*** Unit marker settings ***/
|
||||
/*** All markers **/
|
||||
--unit-border-radius: var(--border-radius-xs);
|
||||
--unit-font-size: 14px;
|
||||
--unit-font-weight: bolder;
|
||||
--unit-label-border-width: 2px;
|
||||
--unit-spotlight-fill: var(--secondary-yellow);
|
||||
--unit-spotlight-radius: 26px;
|
||||
--unit-stroke-width: 3px;
|
||||
--unit-height: 50px;
|
||||
--unit-width: 50px;
|
||||
|
||||
--unit-health-border-width: 2px;
|
||||
--unit-health-height: 6px;
|
||||
--unit-health-width: 36px;
|
||||
--unit-health-x: 0px;
|
||||
--unit-health-y: 26px;
|
||||
|
||||
/*** Air units ***/
|
||||
--unit-ammo-gap: calc(2px + var(--unit-stroke-width));
|
||||
--unit-ammo-border-radius: 50%;
|
||||
--unit-ammo-border-width: 2px;
|
||||
--unit-ammo-radius: 2px;
|
||||
--unit-ammo-spacing: 2px;
|
||||
--unit-ammo-x: 0px;
|
||||
--unit-ammo-y: 30px;
|
||||
--unit-fuel-border-width: 2px;
|
||||
--unit-fuel-height: 6px;
|
||||
--unit-fuel-width: 36px;
|
||||
--unit-fuel-x: 0px;
|
||||
--unit-fuel-y: 22px;
|
||||
--unit-vvi-width: 4px;
|
||||
}
|
||||
|
||||
* {
|
||||
font-weight:600;
|
||||
}
|
||||
|
||||
svg {
|
||||
animation: spin linear infinite 1s;
|
||||
}
|
||||
|
||||
@keyframes spin {
|
||||
from {
|
||||
transform:rotate(0deg);
|
||||
}
|
||||
to {
|
||||
transform:rotate(360deg);
|
||||
}
|
||||
}
|
||||
@ -1,11 +1,42 @@
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const { v4: uuidv4 } = require('uuid');
|
||||
|
||||
// TODO should be user selectable or at least configurable from configuration file
|
||||
var theme = "olympus";
|
||||
var themesMap = {};
|
||||
|
||||
router.get('/theme/*', function (req, res, next) {
|
||||
res.redirect(req.url.replace("theme", "themes/" + theme));
|
||||
/* If this is the first time this session makes a request, create a uuid and save it to the map. Default theme is the olympus theme */
|
||||
if (!req.cookies.id) {
|
||||
const id = uuidv4();
|
||||
res.cookie('id', id, { httpOnly: true });
|
||||
themesMap[id] = "olympus";
|
||||
reqTheme = "olympus";
|
||||
}
|
||||
else {
|
||||
/* If it is present, recover the session theme from the map */
|
||||
if (!(req.cookies.id in themesMap))
|
||||
themesMap[req.cookies.id] = "olympus";
|
||||
reqTheme = themesMap[req.cookies.id];
|
||||
}
|
||||
|
||||
/* Yes, this in an easter egg! :D Feel free to ignore it, or activate the parrot theme to check what it does. Why parrots? The story is a bit long, come to the Discord and ask :D */
|
||||
if (reqTheme === "parrot" && !req.url.includes(".css"))
|
||||
res.redirect('/themes/parrot/images/parrot.svg');
|
||||
else
|
||||
res.redirect(req.url.replace("theme", "themes/" + reqTheme));
|
||||
});
|
||||
|
||||
router.put('/theme/:newTheme', function (req, res, next) {
|
||||
/* Add the theme to the map, if this session already has an id */
|
||||
const newTheme = req.params.newTheme;
|
||||
if (req.cookies.id) {
|
||||
themesMap[req.cookies.id] = newTheme;
|
||||
console.log("Theme set to " + newTheme + " for session " + req.cookies.id);
|
||||
} else {
|
||||
console.log("Failed to set theme to " + newTheme + ", no session id");
|
||||
}
|
||||
|
||||
res.end("Ok");
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
|
||||
@ -210,7 +210,7 @@ export abstract class UnitSpawnMenu {
|
||||
let name = this.#unitLabelDropdown.getOptionsList()[idx];
|
||||
let element = this.#unitLabelDropdown.getOptionElements()[idx] as HTMLElement;
|
||||
let entry = this.#unitDatabase.getByName(name);
|
||||
if (entry) {
|
||||
if (entry && entry.tags?.trim() !== "") {
|
||||
element.querySelectorAll("button")[0]?.append(...(entry.tags?.split(",").map((tag: string) => {
|
||||
tag = tag.trim();
|
||||
let el = document.createElement("div");
|
||||
|
||||
@ -53,7 +53,6 @@ export class OlympusApp {
|
||||
#weaponsManager: WeaponsManager | null = null;
|
||||
|
||||
constructor() {
|
||||
|
||||
}
|
||||
|
||||
// TODO add checks on null
|
||||
|
||||
@ -12,7 +12,7 @@ export class ServerManager {
|
||||
#connected: boolean = false;
|
||||
#paused: boolean = false;
|
||||
#REST_ADDRESS = "http://localhost:30000/olympus";
|
||||
#DEMO_ADDRESS = window.location.href + "demo";
|
||||
#DEMO_ADDRESS = window.location.href.split('?')[0] + "demo"; /* Remove query parameters */
|
||||
#username = "";
|
||||
#password = "";
|
||||
#sessionHash: string | null = null;
|
||||
@ -105,7 +105,7 @@ export class ServerManager {
|
||||
|
||||
getConfig(callback: CallableFunction) {
|
||||
var xmlHttp = new XMLHttpRequest();
|
||||
xmlHttp.open("GET", window.location.href + "config", true);
|
||||
xmlHttp.open("GET", window.location.href.split('?')[0] + "config", true);
|
||||
xmlHttp.onload = function (e) {
|
||||
var data = JSON.parse(xmlHttp.responseText);
|
||||
callback(data);
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
data-on-click-params='{ "type": "iads" }' class="ol-context-menu-button"><img src="/resources/theme/images/buttons/spawn/sam.svg" inject-svg></button>
|
||||
<!--<button data-coalition="blue" id="cap-button" title="Create Combat Air Patrols" data-on-click="coalitionAreaContextMenuShow"
|
||||
data-on-click-params='{ "type": "cap" }' class="ol-context-menu-button"></button>-->
|
||||
<button data-coalition="blue" id="coalitionarea-back-button" title="Bring area to back" data-on-click="coalitionAreaBringToBack"
|
||||
<button data-coalition="blue" id="coalitionarea-back-button" title="Send to back" data-on-click="coalitionAreaBringToBack"
|
||||
class="ol-context-menu-button"><img src="/resources/theme/images/buttons/other/back.svg" inject-svg></button>
|
||||
<button data-coalition="blue" id="coalitionarea-delete-button" title="Delete area" data-on-click="coalitionAreaDelete"
|
||||
class="ol-context-menu-button"><img src="/resources/theme/images/buttons/other/delete.svg" inject-svg></button>
|
||||
|
||||
@ -1,5 +1,17 @@
|
||||
<html>
|
||||
|
||||
<script>
|
||||
const queryString = window.location.search;
|
||||
const urlParams = new URLSearchParams(queryString);
|
||||
const theme = urlParams.get('theme');
|
||||
if (theme != undefined) {
|
||||
var xmlHttp = new XMLHttpRequest();
|
||||
xmlHttp.open("PUT", "/resources/theme/" + theme);
|
||||
xmlHttp.send("");
|
||||
console.log("Setting theme to " + theme)
|
||||
}
|
||||
</script>
|
||||
|
||||
<head>
|
||||
<title>Olympus client</title>
|
||||
<link rel="stylesheet" type="text/css" href="stylesheets/olympus.css" />
|
||||
|
||||
@ -112,7 +112,6 @@
|
||||
<div id="delete-options" class="ol-select">
|
||||
<div class="ol-select-value ol-select-warning">
|
||||
Delete unit
|
||||
<img src="/resources/theme/images/icons/chevron-down.svg" inject-svg />
|
||||
</div>
|
||||
<div class="ol-select-options">
|
||||
<div><button class="ol-button-white" data-on-click="deleteSelectedUnits" title="Immediately remove the unit from the simulation"><img src="/resources/theme/images/icons/trash-can-regular.svg" inject-svg>Delete</button></div>
|
||||
|
||||
24
package-lock.json
generated
Normal file
24
package-lock.json
generated
Normal file
@ -0,0 +1,24 @@
|
||||
{
|
||||
"name": "DCSOlympus",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"dependencies": {
|
||||
"uuid": "^9.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/uuid": {
|
||||
"version": "9.0.1",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
|
||||
"integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
|
||||
"funding": [
|
||||
"https://github.com/sponsors/broofa",
|
||||
"https://github.com/sponsors/ctavan"
|
||||
],
|
||||
"bin": {
|
||||
"uuid": "dist/bin/uuid"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
5
package.json
Normal file
5
package.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"uuid": "^9.0.1"
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user