mirror of
https://github.com/dcs-retribution/dcs-retribution.git
synced 2025-11-10 15:41:24 +00:00
Add unrestricted SATNAV support to factions.
Enabled for bluefor modern, since they ought to have GPS but seemingly don't. This change does nothing until https://github.com/pydcs/dcs/pull/102 lands and we update to it.
This commit is contained in:
parent
2557383946
commit
17b0cee507
@ -108,6 +108,15 @@ class Faction:
|
|||||||
# List of default livery overrides
|
# List of default livery overrides
|
||||||
liveries_overrides: Dict[UnitType, List[str]] = field(default_factory=dict)
|
liveries_overrides: Dict[UnitType, List[str]] = field(default_factory=dict)
|
||||||
|
|
||||||
|
#: Set to True if the faction should force the "Unrestricted satnav" option
|
||||||
|
#: for the mission. This option enables GPS for capable aircraft regardless
|
||||||
|
#: of the time period or operator. For example, the CJTF "countries" don't
|
||||||
|
#: appear to have GPS capability, so they need this.
|
||||||
|
#:
|
||||||
|
#: Note that this option cannot be set per-side. If either faction needs it,
|
||||||
|
#: both will use it.
|
||||||
|
unrestricted_satnav: bool = False
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def from_json(cls: Type[Faction], json: Dict[str, Any]) -> Faction:
|
def from_json(cls: Type[Faction], json: Dict[str, Any]) -> Faction:
|
||||||
|
|
||||||
@ -194,6 +203,8 @@ class Faction:
|
|||||||
if k is not None:
|
if k is not None:
|
||||||
faction.liveries_overrides[k] = [s.lower() for s in v]
|
faction.liveries_overrides[k] = [s.lower() for s in v]
|
||||||
|
|
||||||
|
faction.unrestricted_satnav = json.get("unrestricted_satnav", False)
|
||||||
|
|
||||||
return faction
|
return faction
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
|||||||
@ -36,10 +36,14 @@ class ForcedOptionsGenerator:
|
|||||||
elif self.game.settings.labels == "Off":
|
elif self.game.settings.labels == "Off":
|
||||||
self.mission.forced_options.labels = int(Labels.Off)
|
self.mission.forced_options.labels = int(Labels.Off)
|
||||||
|
|
||||||
|
def _set_unrestricted_satnav(self) -> None:
|
||||||
|
blue = self.game.player_faction
|
||||||
|
red = self.game.enemy_faction
|
||||||
|
if blue.unrestricted_satnav or red.unrestricted_satnav:
|
||||||
|
self.mission.forced_options.unrestricted_satnav = True
|
||||||
|
|
||||||
def generate(self):
|
def generate(self):
|
||||||
self._set_options_view()
|
self._set_options_view()
|
||||||
self._set_external_views()
|
self._set_external_views()
|
||||||
self._set_labels()
|
self._set_labels()
|
||||||
|
self._set_unrestricted_satnav()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -96,5 +96,6 @@
|
|||||||
"ArleighBurkeGroupGenerator"
|
"ArleighBurkeGroupGenerator"
|
||||||
],
|
],
|
||||||
"has_jtac": true,
|
"has_jtac": true,
|
||||||
"jtac_unit": "MQ_9_Reaper"
|
"jtac_unit": "MQ_9_Reaper",
|
||||||
|
"unrestricted_satnav": true
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user