|
|
|
|
@ -73,6 +73,10 @@ class Calculator { |
|
|
|
|
get() { |
|
|
|
|
return this.displayedStats.contains(LONGEST_STREAKS) |
|
|
|
|
} |
|
|
|
|
val shouldSortValues: Boolean |
|
|
|
|
get() { |
|
|
|
|
return this.evolutionValues != EvolutionValues.NONE || this.computeLongestStreak |
|
|
|
|
} |
|
|
|
|
val computeLocationsPlayed: Boolean |
|
|
|
|
get() { |
|
|
|
|
return this.displayedStats.contains(LOCATIONS_PLAYED) |
|
|
|
|
@ -200,14 +204,10 @@ class Calculator { |
|
|
|
|
|
|
|
|
|
val results = ComputedResults(computableGroup, options.shouldManageMultiGroupProgressValues) |
|
|
|
|
|
|
|
|
|
val computables = computableGroup.computables(realm) |
|
|
|
|
val computables = computableGroup.computables(realm, options.shouldSortValues) |
|
|
|
|
Timber.d(">>>> Start computing group ${computableGroup.name}, ${computables.size} computables") |
|
|
|
|
results.addStat(NUMBER_OF_GAMES, computables.size.toDouble()) |
|
|
|
|
|
|
|
|
|
if (options.computeLongestStreak) { |
|
|
|
|
computables.sort("session.startDate") |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
val sum = computables.sum(ComputableResult.Field.RATED_NET.identifier).toDouble() |
|
|
|
|
results.addStat(NET_RESULT, sum) |
|
|
|
|
|
|
|
|
|
@ -265,7 +265,7 @@ class Calculator { |
|
|
|
|
val shouldIterateOverComputables = |
|
|
|
|
(options.evolutionValues == Options.EvolutionValues.STANDARD || options.computeLongestStreak) |
|
|
|
|
|
|
|
|
|
// Iterate for each session |
|
|
|
|
// Computable Result |
|
|
|
|
if (shouldIterateOverComputables) { |
|
|
|
|
|
|
|
|
|
var index = 0 |
|
|
|
|
@ -339,7 +339,7 @@ class Calculator { |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
val sessionSets = computableGroup.sessionSets(realm) |
|
|
|
|
val sessionSets = computableGroup.sessionSets(realm, options.shouldSortValues) |
|
|
|
|
results.addStat(NUMBER_OF_SETS, sessionSets.size.toDouble()) |
|
|
|
|
|
|
|
|
|
var gHourlyDuration: Double? = null |
|
|
|
|
@ -360,6 +360,7 @@ class Calculator { |
|
|
|
|
options.evolutionValues != Options.EvolutionValues.NONE || |
|
|
|
|
options.computeDaysPlayed |
|
|
|
|
|
|
|
|
|
// Session Set |
|
|
|
|
if (shouldIterateOverSets) { |
|
|
|
|
|
|
|
|
|
var tHourlyDuration = 0.0 |
|
|
|
|
@ -419,7 +420,7 @@ class Calculator { |
|
|
|
|
sessionSet |
|
|
|
|
) |
|
|
|
|
results.addEvolutionValue( |
|
|
|
|
sessionSet.netDuration.toDouble(), |
|
|
|
|
sessionSet.hourlyDuration, |
|
|
|
|
tHourlyDuration, |
|
|
|
|
DURATION, |
|
|
|
|
sessionSet |
|
|
|
|
|