Added demo mission data

This commit is contained in:
dpassoni 2023-03-20 17:44:14 +01:00
parent d87139b619
commit 218a8dc3f0
5 changed files with 29 additions and 8 deletions

View File

@ -31,5 +31,5 @@ app.get('/demo/units', (req, res) => demoDataGenerator.units(req, res));
app.get('/demo/logs', (req, res) => demoDataGenerator.logs(req, res));
app.get('/demo/bullseyes', (req, res) => demoDataGenerator.bullseyes(req, res));
app.get('/demo/airbases', (req, res) => demoDataGenerator.airbases(req, res));
app.get('/demo/mission', (req, res) => demoDataGenerator.mission(req, res));

View File

@ -588,6 +588,11 @@ class DemoDataGenerator {
}};
res.send(JSON.stringify(ret));
};
mission(req, res){
var ret = {theatre: "NTTR"};
res.send(JSON.stringify(ret));
}
generateRandomUnitsDemoData(unitsNumber)
{

View File

@ -171,7 +171,7 @@ function setupEvents() {
});
document.addEventListener("toggleUnitVisibility", (ev: CustomEventInit) => {
document.body.toggleAttribute("data-hide-" + ev.detail.unitType);
document.body.toggleAttribute("data-hide-" + ev.detail.category);
});
document.addEventListener( "closeDialog", (ev: CustomEventInit) => {

View File

@ -59,6 +59,7 @@ export class Unit extends Marker {
#selectable: boolean;
#selected: boolean = false;
#hidden: boolean = false;
#preventClick: boolean = false;
@ -100,6 +101,16 @@ export class Unit extends Marker {
this.#pathPolyline.addTo(getMap());
this.#targetsPolylines = [];
document.addEventListener("toggleCoalitionVisibility", (ev: CustomEventInit) => {
if (ev.detail.coalition === this.getMissionData().coalition)
this.setHidden(true);
});
document.addEventListener("toggleUnitVisibility", (ev: CustomEventInit) => {
if (ev.detail.category === this.getBaseData().category)
this.setHidden(true);
});
this.setData(data);
}
@ -243,8 +254,13 @@ export class Unit extends Marker {
this.getTaskData().activePath = undefined;
}
setHidden(hidden: boolean)
{
this.#hidden = hidden;
}
getHidden() {
return false;
return this.#hidden;
}
getLeader() {

View File

@ -28,11 +28,11 @@
</div>
<div id="unit-visibility-control" class="ol-group">
<button id="unit-visibility-control-aircraft" title="Toggle aircraft' visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "unitType": "aircraft" }'></button>
<button id="unit-visibility-control-ground" title="Toggle ground units' visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "unitType": "ground" }'></button>
<button id="unit-visibility-control-sam" title="Toggle SAMs' visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "unitType": "sam" }'></button>
<button id="unit-visibility-control-threat" title="Toggle threat rings' visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "unitType": "threat" }'></button>
<button id="unit-visibility-control-naval" title="Toggle naval visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "unitType": "naval" }'></button>
<button id="unit-visibility-control-aircraft" title="Toggle aircraft' visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "category": "aircraft" }'></button>
<button id="unit-visibility-control-ground" title="Toggle ground units' visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "category": "ground" }'></button>
<button id="unit-visibility-control-sam" title="Toggle SAMs' visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "category": "sam" }'></button>
<button id="unit-visibility-control-threat" title="Toggle threat rings' visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "category": "threat" }'></button>
<button id="unit-visibility-control-naval" title="Toggle naval visibility" data-on-click="toggleUnitVisibility" data-on-click-params='{ "category": "naval" }'></button>
</div>
<div id="coalition-visibility-control" class="ol-group ol-group-button-toggle">