mirror of
https://github.com/Pax1601/DCSOlympus.git
synced 2025-10-29 16:56:34 +00:00
feat(radar state): radar state is now being read from DCS and displayed as a dot (subject to change)
This commit is contained in:
@@ -257,7 +257,7 @@ void Unit::getData(stringstream& ss, unsigned long long time)
|
||||
switch (datumIndex) {
|
||||
case DataIndex::category: appendString(ss, datumIndex, category); break;
|
||||
case DataIndex::alive: appendNumeric(ss, datumIndex, alive); break;
|
||||
case DataIndex::radarState: appendNumeric(ss, datumIndex, radarState); break;
|
||||
case DataIndex::radarState: appendString(ss, datumIndex, radarState); break;
|
||||
case DataIndex::human: appendNumeric(ss, datumIndex, human); break;
|
||||
case DataIndex::controlled: appendNumeric(ss, datumIndex, controlled); break;
|
||||
case DataIndex::coalition: appendNumeric(ss, datumIndex, coalition); break;
|
||||
|
||||
@@ -620,6 +620,27 @@
|
||||
display: inline;
|
||||
}
|
||||
|
||||
/* Unit Radar State */
|
||||
.unit-radar-state {
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
position: absolute;
|
||||
border-radius: 50%;
|
||||
border: none;
|
||||
background: transparent;
|
||||
left: 35px;
|
||||
bottom: 8px;
|
||||
}
|
||||
.unit[data-radar-state="GREEN"] .unit-radar-state {
|
||||
border: 1px solid white;
|
||||
background: rgb(0, 226, 0);
|
||||
}
|
||||
|
||||
.unit[data-radar-state="RED"] .unit-radar-state {
|
||||
border: 1px solid white;
|
||||
background: red;
|
||||
}
|
||||
|
||||
[todo-data-awacs-mode] [data-object|="unit"] .unit-selected-spotlight,
|
||||
[todo-data-awacs-mode] [data-object|="unit"] .unit-short-label,
|
||||
[todo-data-awacs-mode] [data-object|="unit"] .unit-state,
|
||||
|
||||
@@ -1052,6 +1052,13 @@ export abstract class Unit extends CustomMarker {
|
||||
el.append(healthIndicator);
|
||||
}
|
||||
|
||||
/* Radar state indicator */
|
||||
if (this.#radarState !== '') {
|
||||
var radarStateIcon = document.createElement("div");
|
||||
radarStateIcon.classList.add("unit-radar-state");
|
||||
el.append(radarStateIcon);
|
||||
}
|
||||
|
||||
/* Ammo indicator */
|
||||
if (iconOptions.showAmmo) {
|
||||
var ammoIndicator = document.createElement("div");
|
||||
|
||||
@@ -1278,9 +1278,11 @@ function Olympus.setUnitsData(arg, time)
|
||||
|
||||
table["isAlive"] = unit:isExist() and unit:isActive() and unit:getLife() >= 1
|
||||
|
||||
table["radarState"] = "AUTO"
|
||||
if unit:isActive() and unit:hasSensors(Unit.SensorType.RADAR) then
|
||||
-- Olympus.log:info("Unit Has Sensor Radar " .. tostring(unit:hasSensors(Unit.SensorType.RADAR)));
|
||||
|
||||
if unit:isActive() then
|
||||
table["radarState"] = "AUTO"
|
||||
|
||||
if unit:getRadar() then
|
||||
-- Olympus.log:info("radarState: unit active and getRadar is true, setting RED.")
|
||||
table["radarState"] = "RED"
|
||||
|
||||
Reference in New Issue
Block a user