Repository navigation
feat: a mission lists the ships its loadout offers - #1338
Merged
Merged
Conversation
…open A campaign can now give its first mission a ship that the campaign only offers later, such as the Mirage IV at the first tier. The loadout showed only the arc's ship whose place equalled the only ship's type number, which holds for the original's one case, mission 23's Shroud among all twelve, but not for a ship the tier doesn't open yet or for a mod's ship type. The only ship now joins the ships offered where they lack it, and the loadout keeps its place, so nothing depends on how the game numbers its ships. Closes #1337
A campaign can limit a mission's loadout to any ships, even ones its tier doesn't open yet, such as the Mirage IV in its first mission. records.missions[N].loadout_ships replaces the one-ship special case, only_ship, which copied the original's mission 23: the Shroud is now that mission's list of one. The loadout offers a list as it offers a game mode's, and a mission's list stands before the mode's. Without a list, the tier and the rank decide, as before. The hidden ships of mission 23 go, and with them the comparison of a ship's place on the arc with its type number, which held only for the game's twelve fighters in order. only_ship stays as a deprecated alias for a list of one ship. Closes #1337
With one ship offered, such as mission 23's Shroud alone or a game mode's one-ship list, no ship stands on the arc. None sinks to start the missiles rising, and none rises to bring the ship page back, so the loadout stayed busy. The missiles now rise at once, and the ship page comes back once the missiles have sunk and the ship has turned back from belly up. The pass also rewords the docs, comments and API text this change touches in plain English, decides where the loadout's ships come from in one place, and keeps the mission's list type private to the loadout.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
records.missions[N].loadout_shipslists the ships a mission's loadout offers, in order, in place of those the tier and the rank open, even ships they don't open yet. Without it, the tier and the rank decide as before.loadout_ships. A mission's list comes before its mode's, so a mode's records script can limit one mission.only_shipis deprecated and stays as an alias for a list of one ship: reading gives the ship where the list holds one alone, setting a ship sets the list, and nil clears it.zabka14's campaign needs no extra mission:
records.missions[1].loadout_ships = { "mirage" }withrecords.missions[1].tier = 1.Missiles stay by tier. A
loadout_missileslist can follow if a campaign needs one.BEGIN_COMMIT_OVERRIDE
feat: a mission lists the ships its loadout offers, even ones its tier doesn't open yet (#1337)
feat: CampaignMission.only_ship is deprecated in favour of loadout_ships
fix: a loadout that offers one ship turns to the missile page and back
END_COMMIT_OVERRIDE
Closes #1337