You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, if you have a custom objective, you need to check manually in the ResolveScenarioWizardDialog whether you completed it or not. However, doing so does not change the current victory status in the final panel, like other objectives. There appears to be two reasons that I can see for this. First, in ScenarioObjectiveProcessor.determineScenarioStatus, you find the following code:
// some objectives aren't associated with units and their completion is set manually// in that case, we continue onif (!objectiveUnitCounts.containsKey(objective)) {
continue;
}
This kicks out custom objectives right from the get go despite the fact that this method reads in a Map<ScenarioObjective, Boolean> objectiveOverrides object that is supposed to handle this issue with code below this continue check:
This code is unreachable for custom objectives even though the objectiveOverrides object is explicitly designed for custom objectives.
However, here we hit the second issue. The ScenarioObjectiveProcessor.determineScenarioStatus method is only called two places in ResolveScenarioWizardDialog and in both places it reads in an empty HashMap for that object. There is in fact no tracking of HashMap of the needed kind in ResolveScenarioWizardDialog. What is tracked is a Hashmap of check buttons that could be turned into the appropriate output. So it looks like an incomplete project?
The text was updated successfully, but these errors were encountered:
Currently, if you have a custom objective, you need to check manually in the ResolveScenarioWizardDialog whether you completed it or not. However, doing so does not change the current victory status in the final panel, like other objectives. There appears to be two reasons that I can see for this. First, in
ScenarioObjectiveProcessor.determineScenarioStatus
, you find the following code:This kicks out custom objectives right from the get go despite the fact that this method reads in a
Map<ScenarioObjective, Boolean> objectiveOverrides
object that is supposed to handle this issue with code below this continue check:This code is unreachable for custom objectives even though the objectiveOverrides object is explicitly designed for custom objectives.
However, here we hit the second issue. The
ScenarioObjectiveProcessor.determineScenarioStatus
method is only called two places in ResolveScenarioWizardDialog and in both places it reads in an empty HashMap for that object. There is in fact no tracking of HashMap of the needed kind in ResolveScenarioWizardDialog. What is tracked is a Hashmap of check buttons that could be turned into the appropriate output. So it looks like an incomplete project?The text was updated successfully, but these errors were encountered: