Add bullseye to the kneeboard.

Fixes https://github.com/dcs-liberation/dcs_liberation/issues/136
This commit is contained in:
Dan Albert 2021-05-20 18:35:32 -07:00
parent a382e74a89
commit 2f6c04a86d

View File

@ -38,6 +38,7 @@ from tabulate import tabulate
from game.data.alic import AlicCodes from game.data.alic import AlicCodes
from game.db import find_unittype, unit_type_from_name from game.db import find_unittype, unit_type_from_name
from game.theater import ConflictTheater, TheaterGroundObject, LatLon from game.theater import ConflictTheater, TheaterGroundObject, LatLon
from game.theater.bullseye import Bullseye
from game.utils import meters from game.utils import meters
from .aircraft import AIRCRAFT_DATA, FlightData from .aircraft import AIRCRAFT_DATA, FlightData
from .airsupportgen import AwacsInfo, TankerInfo from .airsupportgen import AwacsInfo, TankerInfo
@ -258,10 +259,14 @@ class BriefingPage(KneeboardPage):
def __init__( def __init__(
self, self,
flight: FlightData, flight: FlightData,
bullseye: Bullseye,
theater: ConflictTheater,
start_time: datetime.datetime, start_time: datetime.datetime,
dark_kneeboard: bool, dark_kneeboard: bool,
) -> None: ) -> None:
self.flight = flight self.flight = flight
self.bullseye = bullseye
self.theater = theater
self.start_time = start_time self.start_time = start_time
self.dark_kneeboard = dark_kneeboard self.dark_kneeboard = dark_kneeboard
@ -293,6 +298,10 @@ class BriefingPage(KneeboardPage):
headers=["#", "Action", "Alt", "Dist", "GSPD", "Time", "Departure"], headers=["#", "Action", "Alt", "Dist", "GSPD", "Time", "Departure"],
) )
writer.text(
f"Bullseye: {self.format_ll(self.bullseye.to_lat_lon(self.theater))}"
)
writer.table( writer.table(
[ [
[ [
@ -591,7 +600,13 @@ class KneeboardGenerator(MissionInfoGenerator):
def generate_flight_kneeboard(self, flight: FlightData) -> List[KneeboardPage]: def generate_flight_kneeboard(self, flight: FlightData) -> List[KneeboardPage]:
"""Returns a list of kneeboard pages for the given flight.""" """Returns a list of kneeboard pages for the given flight."""
pages: List[KneeboardPage] = [ pages: List[KneeboardPage] = [
BriefingPage(flight, self.mission.start_time, self.dark_kneeboard), BriefingPage(
flight,
self.game.bullseye_for(flight.friendly),
self.game.theater,
self.mission.start_time,
self.dark_kneeboard,
),
SupportPage( SupportPage(
flight, flight,
self.comms, self.comms,