mirror of
https://github.com/dcs-liberation/dcs_liberation.git
synced 2025-11-10 14:22:26 +00:00
Ignore inconsistent DCS beacon information.
Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3021.
This commit is contained in:
parent
cf985d3d37
commit
001e7dfed9
@ -14,6 +14,7 @@ Saves from 7.x are not compatible with 8.0.
|
|||||||
|
|
||||||
* **[Campaign]** Fix bug introduced in 7.0 where map strike target deaths are no longer tracked.
|
* **[Campaign]** Fix bug introduced in 7.0 where map strike target deaths are no longer tracked.
|
||||||
* **[Mission Generation]** Fix crash during mission generation caused by out of date DCS data for the Gazelle.
|
* **[Mission Generation]** Fix crash during mission generation caused by out of date DCS data for the Gazelle.
|
||||||
|
* **[Mission Generation]** Fix crash during mission generation when DCS beacon data is inconsistent.
|
||||||
|
|
||||||
# 7.1.0
|
# 7.1.0
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
"""Runway information and selection."""
|
"""Runway information and selection."""
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import logging
|
||||||
from dataclasses import dataclass
|
from dataclasses import dataclass
|
||||||
from typing import Iterator, Optional, TYPE_CHECKING
|
from typing import Iterator, Optional, TYPE_CHECKING
|
||||||
|
|
||||||
@ -51,7 +52,20 @@ class RunwayData:
|
|||||||
atc = atc_radio.uhf
|
atc = atc_radio.uhf
|
||||||
|
|
||||||
for beacon_data in airport.beacons:
|
for beacon_data in airport.beacons:
|
||||||
beacon = Beacons.with_id(beacon_data.id, theater)
|
try:
|
||||||
|
beacon = Beacons.with_id(beacon_data.id, theater)
|
||||||
|
except KeyError:
|
||||||
|
# DCS data is not always correct. At time of writing, Hatzor in Sinai
|
||||||
|
# claims to have a beacon named airfield20_0, but the Sinai beacons.lua
|
||||||
|
# has no such beacon.
|
||||||
|
# See https://github.com/dcs-liberation/dcs_liberation/issues/3021.
|
||||||
|
logging.exception(
|
||||||
|
"Airport %s claims to have beacon %s but the map has no beacon "
|
||||||
|
"with that ID",
|
||||||
|
airport.name,
|
||||||
|
beacon_data.id,
|
||||||
|
)
|
||||||
|
continue
|
||||||
if beacon.is_tacan:
|
if beacon.is_tacan:
|
||||||
tacan = beacon.tacan_channel
|
tacan = beacon.tacan_channel
|
||||||
tacan_callsign = beacon.callsign
|
tacan_callsign = beacon.callsign
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user