-
Notifications
You must be signed in to change notification settings - Fork 177
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
Extract AtB Event Types to enum #5824
base: master
Are you sure you want to change the base?
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -222,9 +222,9 @@ public CombatRole getRequiredCombatRole() { | |
* {@link #generateStratConEvent()} method.</p> | ||
* | ||
* @param campaign the {@link Campaign} instance for which the event is being generated. | ||
* @return an integer representing the event type. | ||
* @return an AtBEvent enum representing the event type. | ||
*/ | ||
public int generateEventType(Campaign campaign) { | ||
public AtBEventType generateEventType(Campaign campaign) { | ||
if (campaign.getCampaignOptions().isUseStratCon()) { | ||
return generateStratConEvent(); | ||
} | ||
|
@@ -237,107 +237,107 @@ public int generateEventType(Campaign campaign) { | |
case RECON_RAID: | ||
case EXTRACTION_RAID: | ||
if (roll < 10) { | ||
return AtBContract.EVT_BONUSROLL; | ||
return AtBEventType.BONUSROLL; | ||
} else if (roll < 14) { | ||
return AtBContract.EVT_SPECIAL_SCENARIO; | ||
return AtBEventType.SPECIAL_SCENARIO; | ||
} else if (roll < 16) { | ||
return AtBContract.EVT_BETRAYAL; | ||
return AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
return AtBContract.EVT_TREACHERY; | ||
return AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
return AtBContract.EVT_LOGISTICSFAILURE; | ||
return AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
return AtBContract.EVT_REINFORCEMENTS; | ||
return AtBEventType.REINFORCEMENTS; | ||
} else if (roll < 20) { | ||
return AtBContract.EVT_SPECIALEVENTS; | ||
return AtBEventType.SPECIALEVENTS; | ||
} else { | ||
return AtBContract.EVT_BIGBATTLE; | ||
return AtBEventType.BIGBATTLE; | ||
} | ||
case GARRISON_DUTY: | ||
if (roll < 8) { | ||
return AtBContract.EVT_BONUSROLL; | ||
return AtBEventType.BONUSROLL; | ||
} else if (roll < 12) { | ||
return AtBContract.EVT_SPECIAL_SCENARIO; | ||
return AtBEventType.SPECIAL_SCENARIO; | ||
} else if (roll < 13) { | ||
return AtBContract.EVT_CIVILDISTURBANCE; | ||
return AtBEventType.CIVILDISTURBANCE; | ||
} else if (roll < 14) { | ||
return AtBContract.EVT_SPORADICUPRISINGS; | ||
return AtBEventType.SPORADICUPRISINGS; | ||
} else if (roll < 15) { | ||
return AtBContract.EVT_REBELLION; | ||
return AtBEventType.REBELLION; | ||
} else if (roll < 16) { | ||
return AtBContract.EVT_BETRAYAL; | ||
return AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
return AtBContract.EVT_TREACHERY; | ||
return AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
return AtBContract.EVT_LOGISTICSFAILURE; | ||
return AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
return AtBContract.EVT_REINFORCEMENTS; | ||
return AtBEventType.REINFORCEMENTS; | ||
} else if (roll < 20) { | ||
return AtBContract.EVT_SPECIALEVENTS; | ||
return AtBEventType.SPECIALEVENTS; | ||
} else { | ||
return AtBContract.EVT_BIGBATTLE; | ||
return AtBEventType.BIGBATTLE; | ||
} | ||
case RIOT_DUTY: | ||
if (roll < 8) { | ||
return AtBContract.EVT_BONUSROLL; | ||
return AtBEventType.BONUSROLL; | ||
} else if (roll < 11) { | ||
return AtBContract.EVT_SPECIAL_SCENARIO; | ||
return AtBEventType.SPECIAL_SCENARIO; | ||
} else if (roll < 12) { | ||
return AtBContract.EVT_CIVILDISTURBANCE; | ||
return AtBEventType.CIVILDISTURBANCE; | ||
} else if (roll < 13) { | ||
return AtBContract.EVT_SPORADICUPRISINGS; | ||
return AtBEventType.SPORADICUPRISINGS; | ||
} else if (roll < 15) { | ||
return AtBContract.EVT_REBELLION; | ||
return AtBEventType.REBELLION; | ||
} else if (roll < 16) { | ||
return AtBContract.EVT_BETRAYAL; | ||
return AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
return AtBContract.EVT_TREACHERY; | ||
return AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
return AtBContract.EVT_LOGISTICSFAILURE; | ||
return AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
return AtBContract.EVT_REINFORCEMENTS; | ||
return AtBEventType.REINFORCEMENTS; | ||
} else if (roll < 20) { | ||
return AtBContract.EVT_SPECIALEVENTS; | ||
return AtBEventType.SPECIALEVENTS; | ||
} else { | ||
return AtBContract.EVT_BIGBATTLE; | ||
return AtBEventType.BIGBATTLE; | ||
} | ||
case PIRATE_HUNTING: | ||
if (roll < 10) { | ||
return AtBContract.EVT_BONUSROLL; | ||
return AtBEventType.BONUSROLL; | ||
} else if (roll < 14) { | ||
return AtBContract.EVT_SPECIAL_SCENARIO; | ||
return AtBEventType.SPECIAL_SCENARIO; | ||
} else if (roll < 15) { | ||
return AtBContract.EVT_CIVILDISTURBANCE; | ||
return AtBEventType.CIVILDISTURBANCE; | ||
} else if (roll < 16) { | ||
return AtBContract.EVT_BETRAYAL; | ||
return AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
return AtBContract.EVT_TREACHERY; | ||
return AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
return AtBContract.EVT_LOGISTICSFAILURE; | ||
return AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
return AtBContract.EVT_REINFORCEMENTS; | ||
return AtBEventType.REINFORCEMENTS; | ||
} else if (roll < 20) { | ||
return AtBContract.EVT_SPECIALEVENTS; | ||
return AtBEventType.SPECIALEVENTS; | ||
} else { | ||
return AtBContract.EVT_BIGBATTLE; | ||
return AtBEventType.BIGBATTLE; | ||
} | ||
default: | ||
if (roll < 10) { | ||
return AtBContract.EVT_BONUSROLL; | ||
return AtBEventType.BONUSROLL; | ||
} else if (roll < 15) { | ||
return AtBContract.EVT_SPECIAL_SCENARIO; | ||
return AtBEventType.SPECIAL_SCENARIO; | ||
} else if (roll < 16) { | ||
return AtBContract.EVT_BETRAYAL; | ||
return AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
return AtBContract.EVT_TREACHERY; | ||
return AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
return AtBContract.EVT_LOGISTICSFAILURE; | ||
return AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
return AtBContract.EVT_REINFORCEMENTS; | ||
return AtBEventType.REINFORCEMENTS; | ||
} else if (roll < 20) { | ||
return AtBContract.EVT_SPECIALEVENTS; | ||
return AtBEventType.SPECIALEVENTS; | ||
} else { | ||
return AtBContract.EVT_BIGBATTLE; | ||
return AtBEventType.BIGBATTLE; | ||
} | ||
} | ||
} | ||
|
@@ -351,97 +351,97 @@ public int generateEventType(Campaign campaign) { | |
* | ||
* @return an integer representing the event type. | ||
*/ | ||
public int generateStratConEvent() { | ||
public AtBEventType generateStratConEvent() { | ||
final int roll = Compute.randomInt(20) + 1; | ||
Comment on lines
+354
to
355
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this really should be a static map or something like it. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks, that probably does make sense. I'm guessing we'd need to simplify the rolls to avoid a bunch of duplicate values (e.g., for keys 10-13 and 14-15), right? By the way, with the current direction I'm heading with the Contract classes, this PR isn't as useful as it was, so I'm also OK closing it unless we want to take an opportunity to clean up those roll tables like @Scoppio suggested. |
||
|
||
return switch (this) { | ||
case DIVERSIONARY_RAID, OBJECTIVE_RAID, RECON_RAID, EXTRACTION_RAID -> { | ||
if (roll < 14) { | ||
yield AtBContract.EVT_BONUSROLL; | ||
yield AtBEventType.BONUSROLL; | ||
} else if (roll < 16) { | ||
yield AtBContract.EVT_BETRAYAL; | ||
yield AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
yield AtBContract.EVT_TREACHERY; | ||
yield AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
yield AtBContract.EVT_LOGISTICSFAILURE; | ||
yield AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
yield AtBContract.EVT_REINFORCEMENTS; | ||
yield AtBEventType.REINFORCEMENTS; | ||
} else { | ||
yield AtBContract.EVT_SPECIALEVENTS; | ||
yield AtBEventType.SPECIALEVENTS; | ||
} | ||
} | ||
case GARRISON_DUTY -> { | ||
if (roll < 12) { | ||
yield AtBContract.EVT_BONUSROLL; | ||
yield AtBEventType.BONUSROLL; | ||
} else if (roll < 13) { | ||
yield AtBContract.EVT_CIVILDISTURBANCE; | ||
yield AtBEventType.CIVILDISTURBANCE; | ||
} else if (roll < 14) { | ||
yield AtBContract.EVT_SPORADICUPRISINGS; | ||
yield AtBEventType.SPORADICUPRISINGS; | ||
} else if (roll < 15) { | ||
yield AtBContract.EVT_REBELLION; | ||
yield AtBEventType.REBELLION; | ||
} else if (roll < 16) { | ||
yield AtBContract.EVT_BETRAYAL; | ||
yield AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
yield AtBContract.EVT_TREACHERY; | ||
yield AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
yield AtBContract.EVT_LOGISTICSFAILURE; | ||
yield AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
yield AtBContract.EVT_REINFORCEMENTS; | ||
yield AtBEventType.REINFORCEMENTS; | ||
} else { | ||
yield AtBContract.EVT_SPECIALEVENTS; | ||
yield AtBEventType.SPECIALEVENTS; | ||
} | ||
} | ||
case RIOT_DUTY -> { | ||
if (roll < 11) { | ||
yield AtBContract.EVT_BONUSROLL; | ||
yield AtBEventType.BONUSROLL; | ||
} else if (roll < 12) { | ||
yield AtBContract.EVT_CIVILDISTURBANCE; | ||
yield AtBEventType.CIVILDISTURBANCE; | ||
} else if (roll < 13) { | ||
yield AtBContract.EVT_SPORADICUPRISINGS; | ||
yield AtBEventType.SPORADICUPRISINGS; | ||
} else if (roll < 15) { | ||
yield AtBContract.EVT_REBELLION; | ||
yield AtBEventType.REBELLION; | ||
} else if (roll < 16) { | ||
yield AtBContract.EVT_BETRAYAL; | ||
yield AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
yield AtBContract.EVT_TREACHERY; | ||
yield AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
yield AtBContract.EVT_LOGISTICSFAILURE; | ||
yield AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
yield AtBContract.EVT_REINFORCEMENTS; | ||
yield AtBEventType.REINFORCEMENTS; | ||
} else { | ||
yield AtBContract.EVT_SPECIALEVENTS; | ||
yield AtBEventType.SPECIALEVENTS; | ||
} | ||
} | ||
case PIRATE_HUNTING -> { | ||
if (roll < 14) { | ||
yield AtBContract.EVT_BONUSROLL; | ||
yield AtBEventType.BONUSROLL; | ||
} else if (roll < 15) { | ||
yield AtBContract.EVT_CIVILDISTURBANCE; | ||
yield AtBEventType.CIVILDISTURBANCE; | ||
} else if (roll < 16) { | ||
yield AtBContract.EVT_BETRAYAL; | ||
yield AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
yield AtBContract.EVT_TREACHERY; | ||
yield AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
yield AtBContract.EVT_LOGISTICSFAILURE; | ||
yield AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
yield AtBContract.EVT_REINFORCEMENTS; | ||
yield AtBEventType.REINFORCEMENTS; | ||
} else { | ||
yield AtBContract.EVT_SPECIALEVENTS; | ||
yield AtBEventType.SPECIALEVENTS; | ||
} | ||
} | ||
default -> { | ||
if (roll < 15) { | ||
yield AtBContract.EVT_BONUSROLL; | ||
yield AtBEventType.BONUSROLL; | ||
} else if (roll < 16) { | ||
yield AtBContract.EVT_BETRAYAL; | ||
yield AtBEventType.BETRAYAL; | ||
} else if (roll < 17) { | ||
yield AtBContract.EVT_TREACHERY; | ||
yield AtBEventType.TREACHERY; | ||
} else if (roll < 18) { | ||
yield AtBContract.EVT_LOGISTICSFAILURE; | ||
yield AtBEventType.LOGISTICSFAILURE; | ||
} else if (roll < 19) { | ||
yield AtBContract.EVT_REINFORCEMENTS; | ||
yield AtBEventType.REINFORCEMENTS; | ||
} else { | ||
yield AtBContract.EVT_SPECIALEVENTS; | ||
yield AtBEventType.SPECIALEVENTS; | ||
} | ||
} | ||
}; | ||
|
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.
These, and all following if/else chains, can be simplified using switch/case with fall through.
Start at 20 and work down.
It'll increase readability for most.