2930 Commits

Author SHA1 Message Date
Mustang-25
41a9d1194d Increment to Campaign v8.0
(cherry picked from commit 274a41f0528d7f6c83eb7f2f4d85c9f8baae449d)
2021-08-08 12:52:04 -07:00
Mustang-25
4f7f93ebd8 Increment to Campaign v8.0
(cherry picked from commit 3670c8f8797be30d2960c9ab4ca707b2f9517316)
2021-08-08 12:52:04 -07:00
Mustang-25
0f36273de1 Increment to Campaign v8.0
(cherry picked from commit e88bb442f394599d0728ebbd5b52e1bd9a68f3aa)
2021-08-08 12:52:04 -07:00
Dan Albert
c6a5161a2a Remove the SA-10 from Syria 2011.
They didn't get this until a few years later. This was a stand-in for
the SA-5 that DCS doesn't have, but the SA-10 is so much more capable
that it's not a good replacement.

(cherry picked from commit 80bf3c97b22e4912943b0d28083a30427f43264d)
2021-08-08 12:52:04 -07:00
Dan Albert
2295f4edfe Bump campaign version to 8.0 for latest DCS.
Building IDs changed again. Ack the change in my two campaigns which
don't use these target types.

(cherry picked from commit edbd3de4a4f8d62adeb98880f97e012d2bab75a8)
2021-08-08 12:52:04 -07:00
Dan Albert
1991c4d48f Add decorator for tracking save compat.
Used to decorate functions or methods that have save compat code for a
given major version.

```
@has_save_compat_for(5)
def foo() -> None:
    ...
```

This function will raise an error at startup if it is decorated as
having save compat for a version other than the current major version of
the game. A new major version is the definition of a save compat break,
so keeping around the old compat code serves no purpose other than
hiding initialization bugs. The compat code and the decorator should be
removed in the branch raising the error.

(cherry picked from commit cd558daf5a601f64e98ad4ae2e7f6351be702632)
2021-08-08 12:52:04 -07:00
Dan Albert
81c2bd6c76 Correct int/float confusion in Point APIs.
The heading and distance calculations always return floats.

(cherry picked from commit 6ce02282e74fd3455c3a63880330c05b63a35bff)
2021-08-08 12:52:04 -07:00
Dan Albert
fb964648a8 Use Pillow types from typeshed.
(cherry picked from commit a19a0b678974632549b418764c86b4714354cee1)
2021-08-08 12:52:04 -07:00
Dan Albert
93c6cb34fb Update to latest pydcs.
This includes the basics that we need to get type checking for pydcs
calls.

Type checking has been disabled in a few monkey-patching cases. Patches
ought to be sent upstream (or in the case of dead unit tracking,
replaced with a better model).

(cherry picked from commit 9de08dc83ff1ed30b15f5c7acc21da316fce9b6b)
2021-08-08 12:52:04 -07:00
Dan Albert
be13d8c0a6 More adaptation for pydcs updates.
This is as much as we can do until pydcs actually adds the py.typed
file. Once that's added there are a few ugly monkey patching corners
that will just need `# type: ignore` for now, but we can't pre-add those
since we have mypy warning us about superfluous ignore comments.

(cherry picked from commit 96c7b87ac7ef9382ffad9c3b5846fd8c0df8b0a2)
2021-08-08 12:52:04 -07:00
Brock Greman
6a8a9ef7e9 Fixing broken group generation.
(cherry picked from commit 469dd49defabf7f7c607f6dc5f9c6a82beb04c29)
2021-08-08 12:52:04 -07:00
Dan Albert
c0f6974d07 Fix some typing in preparation for pydcs types.
Not complete, but progress.

(cherry picked from commit 53f6a0b32b922110ccc163e3221a0f6cfd445ef9)
2021-08-08 12:52:04 -07:00
Dan Albert
4e9d661c0c Flesh out typing information, enforce.
(cherry picked from commit fb9a0fe833198d41a911f22d5efc4e3c4829c316)
2021-08-08 12:52:04 -07:00
Dan Albert
7cfd6b7151 Disallow partially specified generics.
(cherry picked from commit 69c3d41a8ad967db27e99235c2f7b9196d29e6b9)
2021-08-08 12:52:04 -07:00
Dan Albert
65dfa8e209 Type check the contents of untyped functions.
By default mypy doesn't type check the code within an untyped function.
This enables that and fixes typing errors to accomodate it.

This did uncover a very old bug:
https://github.com/dcs-liberation/dcs_liberation/issues/1417

(cherry picked from commit fc32b983413dd741a23d33db6da89ddcba7bed64)
2021-08-08 12:52:04 -07:00
Dan Albert
7015b3a40d Fix unreachable code issues, enable checking.
The loadout case actually could (and previously did) hide bugs from the
type checker, since mypy was smart enough to see that we were removing
None from the input it assumed that the member was non-optional, but
later modifications could cause null values, and since those came from
the UI mypy couldn't reason about this. This meant that mypy assumed the
type could not be optional and wouldn't check that case.

(cherry picked from commit 299ed88f09d506df1a10e5454b237263e5cbeeab)
2021-08-08 12:52:04 -07:00
Dan Albert
f9c20d729b Add (mostly disabled) mypy configs.
We're missing a lot of checking right now. Most of it requires
additional cleanup. For now I've enabled what I could and will follow up
to clean up and enable more checking.

(cherry picked from commit 29753a6aa9e38a2a2a9a0741ff9bda31b33498c2)
2021-08-08 12:52:04 -07:00
Dan Albert
fa5cbac2fc Add documentation for turn processing.
(cherry picked from commit 7983cd8d623d5733d50dc85ea55824a1dfc952df)
2021-08-08 12:52:04 -07:00
RndName
638903ddf7 correct display of turn statistics 2021-08-08 12:52:04 -07:00
RndName
40092bf87f replan opfor mission on sell or buy of tgos
(cherry picked from commit 7229b886e0eaad14d6c59fda47399d0d65b10e70)
2021-08-08 12:52:04 -07:00
Dan Albert
ec15c37332 Note fix for empty convoy groups.
(cherry picked from commit 8b70d2674f67ca1aed85ac4294989091428cda0f)
2021-08-08 12:52:04 -07:00
RndName
4b1d629e9b remove completely destroyed units from the convoy
(cherry picked from commit 8ba27cdaeae84914aced36851d78f070b1ee1f63)
2021-08-08 12:52:04 -07:00
bgreman
4b526e2b90 Adds Marianas Islands support (#1406)
* Implements #1399

* Reverting accidental change in generate_landmap.py

* Changelog update

* Import beacon data for Marianas.

Co-authored-by: Dan Albert <dan@gingerhq.net>
(cherry picked from commit aa328d3ef715bd86180b29d8784ae9040d51aec6)
2021-08-08 12:52:04 -07:00
Dan Albert
8efe66bb45 Fixup None loadouts for aircraft with no loadouts.
Aircraft that have no loadouts at all (such as the IL-78M) will have no
loadouts and thus no values in the dropdown menu. If the player toggles
the custom layout box we reset the flight's loadout to the selected
loadout, and with no loadouts in the combo box that is None, and
`Flight.loadout` isn't supposed to be optional.

Check for that case in the loadout selector and replace with an empty
loadout if that happens.

Fixes https://github.com/dcs-liberation/dcs_liberation/issues/1402

(cherry picked from commit 727facfb90dac06c3eb74b90e0296a097fae79a3)
2021-08-08 12:52:04 -07:00
Dan Albert
d9dadfb43c Fix the legacy tanker.
Fixes https://github.com/dcs-liberation/dcs_liberation/issues/1379

(cherry picked from commit 4add8534735c75865955ec7a00a45c43bcf78cde)
2021-08-08 12:52:04 -07:00
RndName
f250be97c7 remove prices from sam generators
The prices are only estimations due to randomization. the real price will be only known when the generator was used and the final units are known

(cherry picked from commit b2db27f9aa06ddbeb6c9e87686abb04cd2f2bb16)
2021-08-08 12:52:04 -07:00
RndName
c8d22925ee correct prices for ewr and sams
prices will now be calculated for the whole group by the generator by
looking up the price using the  GroundUnitType wrapper

fixes #1163

(cherry picked from commit 96be6c0efe4b6b0f3af38bf5c43a9818e1eed4e6)
2021-08-08 12:52:04 -07:00
Dan Albert
7c706be82b Note the silkworm fix in the changelog.
(cherry picked from commit 3f42f1281d60b941b0b269c50c3aebc0ed5338fd)
2021-08-08 12:52:04 -07:00
Mustang-25
55e5aee75a Corrected Silkworm launcher name
(cherry picked from commit bab8384803eb0bcf16f1a3e599c6555a060ac304)
2021-08-08 12:52:04 -07:00
Florian
e550ca29e8 Remove the randomness from SAM group size.
(cherry picked from commit 3f65928e9d1012cff95029ce03bec08db682ea92)
2021-08-08 12:52:04 -07:00
Dan Albert
229290dc3d Bump version to 4.1.0. 2021-08-08 12:52:04 -07:00
Dan Albert
670bbc0a28 4.0.1 -> 4.1.0
This includes new features now.

(cherry picked from commit 4e6659e7e8099c371251c9df8e193607f9386f7e)
2021-08-08 12:52:04 -07:00
Chris Seagraves
3550166a42 Note TGO tooltip improvement in the changelog.
(cherry picked from commit 9e22d4b5dfa1a5848fc707dea831ea66930a7049)
2021-08-08 12:52:04 -07:00
RndName
72fe24c656 fixed lua data generation
(cherry picked from commit 357361de3deabc8894c46207e784c8ba6c47e482)
2021-08-08 12:52:04 -07:00
RndName
201fe121ff reworked the skynet group name generation
- added information about the role of the aa site
- moved handling of ground name from tgo to the sam generator to make the tgo cleaner
- adjusted the skynet-config lua to the changes

(cherry picked from commit de443fa3f0ac7ab2d450ec097cf7ac94f17f3506)
2021-08-08 12:52:04 -07:00
Dan Albert
a8bd3df46f Minor formatting fix for the changelog.
(cherry picked from commit 20839853b7bfac7c3907fc62ba821f05bd8efda9)
2021-08-08 12:52:04 -07:00
Chris Seagraves
1bc16fc82c Fix for crash when clear weather.
Fixes https://github.com/dcs-liberation/dcs_liberation/issues/1394

(cherry picked from commit bc2539b566a9849d3c3997729128087f3f21e557)
2021-08-08 12:52:04 -07:00
Dan Albert
c3f99161ca Remove debug cruft.
We don't need to print the description of every unit on startup.

(cherry picked from commit 2ef2eafdd3d90b330825e206b4638c50c1b29b2c)
2021-08-08 12:52:04 -07:00
bgreman
fb85fca565 Addresses #478 to clean up the angle summing functionality. (#1386)
(cherry picked from commit 9bd6f9ef47475e936d2abe052bb56fd30d0d2fbb)
2021-08-08 12:52:04 -07:00
bgreman
9a2041b9d2 Increasing time JTAC radio messages stay on the UI. (#1369)
- Target lost or killed: 10s -> 20s
- New target : 10s -> 30s
- Request JTAC Status: 25s -> 60s

(cherry picked from commit c8e5cefd3675040d0cec83b23e1306a56fca2e65)
2021-08-08 12:52:04 -07:00
bgreman
104a46de85 Fixes #240 by making statistics windows axis labels integers (#1370)
(cherry picked from commit 7ba4077f9f83822468d1b3c191b470634a71dbd6)
2021-08-08 12:52:04 -07:00
Mustang-25
3171fd0ef7 Update TGP Restriction Dates
TGP dates to more accurately reflect IRL IOC dates.

(cherry picked from commit 151f8bf329a6c9e6dc89d3a7b05263ba4d6ccc80)
2021-08-08 12:52:04 -07:00
Chris Seagraves
a58d3febcb Notes to kneeboard (#1375)
Adds global-level kneeboard notes.  Explicit save compatability with 4.0.0

(cherry picked from commit e94d48c265024b511190fb4d0db7c9bb5144c9c5)
2021-08-08 12:52:04 -07:00
Fryderyk Wysocki
51577c2eb4 Update poland_2010.json (#1380)
* Update poland_2010.json

* Adding MiG-29G to PL faction

Poland has bought some MiG-29Gs from unified Germany in the early '90s

(cherry picked from commit 2a5c523afd7c3329907445ebad0981053939a6e2)
2021-08-08 12:52:04 -07:00
Chris Seagraves
54ac4a387a Add Cloud Base Altitude to Weather Display (#1371)
Adds tooltip with cloud base altitude to weather panel

(cherry picked from commit f80696b7244d2eace20111dacdcb149cb4747055)
2021-08-08 12:52:04 -07:00
Chris Seagraves
32dc3c3170 asset reference links 😎 (#1363)
Adds urls to unit info pages that don't have data.

(cherry picked from commit 5f5b5f69e31c0abb358f64431c686356a051543a)
2021-08-08 12:52:04 -07:00
Chris Seagraves
dc8f17774e Update main.py (#1382)
(cherry picked from commit d99f8fef0995be5034cd7f92242d96c35f7704ab)
2021-08-08 12:52:04 -07:00
Dan Albert
320a5a8abf Add changelog section for 4.0.1.
(cherry picked from commit 0b90b53e09bd67cbdbf925d4df0f234d2de70ed7)
2021-08-08 12:52:04 -07:00
Simon Clark
3badda600d Fix begin campaign button on reload. 2021-08-08 12:52:04 -07:00
Dan Albert
8e6e1469d7 Merge branch 'develop-4.x' into master. 4.0.0 2021-06-26 12:59:07 -07:00