diff --git a/game/game.py b/game/game.py index 85b83dce..32abab7e 100644 --- a/game/game.py +++ b/game/game.py @@ -37,7 +37,8 @@ from .theater.theatergroundobject import ( TheaterGroundObject, ) from .theater.transitnetwork import TransitNetwork, TransitNetworkBuilder -from .weather import Conditions, TimeOfDay +from .timeofday import TimeOfDay +from .weather import Conditions if TYPE_CHECKING: from .ato.airtaaskingorder import AirTaskingOrder diff --git a/game/theater/daytimemap.py b/game/theater/daytimemap.py index c9c0a570..183483b5 100644 --- a/game/theater/daytimemap.py +++ b/game/theater/daytimemap.py @@ -2,7 +2,7 @@ from dataclasses import dataclass from datetime import time from typing import TypeAlias -from game.weather import TimeOfDay +from game.timeofday import TimeOfDay TimeRange: TypeAlias = tuple[time, time] diff --git a/game/timeofday.py b/game/timeofday.py new file mode 100644 index 00000000..98ed270c --- /dev/null +++ b/game/timeofday.py @@ -0,0 +1,10 @@ +from __future__ import annotations + +from enum import Enum + + +class TimeOfDay(Enum): + Dawn = "dawn" + Day = "day" + Dusk = "dusk" + Night = "night" diff --git a/game/weather.py b/game/weather.py index 24361cd6..b8401216 100644 --- a/game/weather.py +++ b/game/weather.py @@ -4,28 +4,22 @@ import datetime import logging import random from dataclasses import dataclass, field -from enum import Enum from typing import Optional, TYPE_CHECKING from dcs.cloud_presets import Clouds as PydcsClouds from dcs.weather import CloudPreset, Weather as PydcsWeather, Wind +from game.theater.daytimemap import DaytimeMap from game.theater.seasonalconditions import determine_season +from game.timeofday import TimeOfDay from game.utils import Distance, Heading, Pressure, inches_hg, interpolate, meters if TYPE_CHECKING: from game.settings import Settings - from game.theater import ConflictTheater, DaytimeMap + from game.theater import ConflictTheater from game.theater.seasonalconditions import SeasonalConditions -class TimeOfDay(Enum): - Dawn = "dawn" - Day = "day" - Dusk = "dusk" - Night = "night" - - @dataclass(frozen=True) class AtmosphericConditions: #: Pressure at sea level. diff --git a/qt_ui/widgets/QConditionsWidget.py b/qt_ui/widgets/QConditionsWidget.py index 07ddee56..24acd5bd 100644 --- a/qt_ui/widgets/QConditionsWidget.py +++ b/qt_ui/widgets/QConditionsWidget.py @@ -13,8 +13,9 @@ from dcs.weather import CloudPreset, Weather as PydcsWeather import qt_ui.uiconstants as CONST from game.sim.gameupdateevents import GameUpdateEvents +from game.timeofday import TimeOfDay from game.utils import mps -from game.weather import Conditions, TimeOfDay +from game.weather import Conditions from qt_ui.simcontroller import SimController diff --git a/tests/test_daytimemap.py b/tests/test_daytimemap.py index c97ee8e5..2082679b 100644 --- a/tests/test_daytimemap.py +++ b/tests/test_daytimemap.py @@ -3,7 +3,7 @@ from datetime import time import pytest from game.theater.daytimemap import DaytimeMap -from game.weather import TimeOfDay +from game.timeofday import TimeOfDay def test_range_of() -> None: