-
Notifications
You must be signed in to change notification settings - Fork 291
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Advanced Atmospheric Control Roll Errata #5867
Advanced Atmospheric Control Roll Errata #5867
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #5867 +/- ##
=========================================
Coverage 28.91% 28.91%
- Complexity 13942 13969 +27
=========================================
Files 2539 2542 +3
Lines 268416 268503 +87
Branches 47947 47967 +20
=========================================
+ Hits 77603 77644 +41
- Misses 186842 186882 +40
- Partials 3971 3977 +6 ☔ View full report in Codecov by Sentry. |
@@ -489,6 +489,8 @@ GameOptionsInfo.option.crashed_dropships_survive.displayableName=(Unofficial) Un | |||
GameOptionsInfo.option.crashed_dropships_survive.description=If checked, DropShips (and larger) that crash while out of control are not instantly destroyed. | |||
GameOptionsInfo.option.expanded_kf_drive_damage.displayableName=(Unofficial) Damage individual K-F Drive components on K-F Drive Critical Hit | |||
GameOptionsInfo.option.expanded_kf_drive_damage.description=If a K-F Drive critical hit is taken, a random component is hit (per BattleSpace rules). | |||
GameOptionsInfo.option.unoff_adv_atmospheric_control.displayableName=(Unofficial) Old StratOps Advanced Atmospheric Control Rolls |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Open to suggestions on the naming/wording for these
fde87ee
to
5cced64
Compare
} else { | ||
// Not an atmospheric control roll under the new rules, so treat normally | ||
rolls.addElement(modifier); | ||
if (!reasons.isEmpty()) { | ||
reasons.append("; "); | ||
} | ||
reasons.append(modifier.getPlainDesc()); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will there ever be any control rolls that fall into this condition? Or at this phase of the game (end phase) will all control rolls be thresh/highest thresh/avionics/control? I handled it just to be safe but this condition may be unnecessary
b8f0158
to
427fbc2
Compare
427fbc2
to
2b94652
Compare
2b94652
to
ee5d6ac
Compare
ee5d6ac
to
fe0bd22
Compare
@Sleet01 I think this is ready for review now that 0.50 is out, whenever you get a chance. @Thom293 tested it awhile back and thought it worked correctly, but I'd like to get an experienced set of eyes on this. Note my open question above about different types of control rolls in the endphase. Thanks in advance! |
@Algebro7 Looks like NeoAncient's PR updating I've found the following approach to give good results and, more importantly, not cause a lot of headaches:
|
… a separate method
fe0bd22
to
4e381b6
Compare
Thanks, I've rebased and fixed the failing test. |
@@ -127,6 +127,7 @@ public String[] getLocationAbbrs() { | |||
private int altLoss = 0; | |||
private int altLossThisRound = 0; | |||
|
|||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was this added intentionally?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Regardless of the answer to this question, it's surely more effort than it's worth it to worry about a single blank line
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's nearly no effort to fix, and everyone should get in the habit of spotting unintended changes to their PRs as a matter of course.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My bad, fixed in 07bce77
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me, just one minor question but very nice!
for (Enumeration<PilotingRollData> j = game.getControlRolls(); j.hasMoreElements(); ) { | ||
final PilotingRollData modifier = j.nextElement(); | ||
if (modifier.getEntityId() != e.getId()) { | ||
continue; |
Check warning
Code scanning / CodeQL
Dereferenced variable may be null Warning
This is currently a WIP implementation of the StratOps Advanced Atmospheric Control Roll Errata introduced on August 2, 2024. The plan is to keep the old rule as an (Unofficial) rule. Please do not merge yet.
Things left to do (please add to this list if you notice something I've missed):
damageThisRound
to the highest threshold