Closed MatthewMarinets closed 2 months ago
Summarizing discussion on discord:
if (mission.flags & MissionFlags.TimedDefense) == MissionFlags.TimedDefense
flags in flaggroup
checks if all flags in flags
are in flaggroup
flags & flaggroup
checks if any flags in flags
and in flaggroup
First step in the refactors I want to do for mission selection and item selection. Item selection is already underway and I wanted to get it done first, but having flags to identify e.g. which missions have Kerrigan or vanilla SOA was too useful. This was a good standalone change, though I will be building off it on another branch.
What is this fixing or adding?
Each SC2Mission entry gets a flags member used to identify some features of the mission. In the future, this will work with mission groups to give better / more concise mission exclusion / locking options. I'm also using some of these flags on another branch to identify what items to exclude when generating item lists.
How was this tested?
Ran a quick generation; I haven't checked these flags too many times so there may be errors, and there's probably some discussion to be had on what exactly counts as a timed mission / defense mission. The only flags currently being used by the code are the no-build ones.
If this makes graphical changes, please attach screenshots.