diff --git a/horse/abilityvalueusage_string.go b/horse/abilityvalueusage_string.go index dd9c25e..713dfdb 100644 --- a/horse/abilityvalueusage_string.go +++ b/horse/abilityvalueusage_string.go @@ -9,29 +9,53 @@ func _() { // Re-run the stringer command to generate them again. var x [1]struct{} _ = x[ValueUsageDirect-1] + _ = x[ValueUsageSkillCount-2] _ = x[ValueUsageTeamSpeed-3] _ = x[ValueUsageTeamStamina-4] _ = x[ValueUsageTeamPower-5] _ = x[ValueUsageTeamGuts-6] _ = x[ValueUsageTeamWit-7] + _ = x[ValueUsageRandom-8] + _ = x[ValueUsageRandom2-9] + _ = x[ValueUsageClimax-10] + _ = x[ValueUsageMaxStat-13] + _ = x[ValueUsageGreenCount-14] + _ = x[ValueUsageDistAdd-19] + _ = x[ValueUsageMidSideBlock-20] + _ = x[ValueUsageSpeed-22] + _ = x[ValueUsageSpeed2-23] + _ = x[ValueUsageArcPotential-24] + _ = x[ValueUsageMaxLead-25] } const ( - _AbilityValueUsage_name_0 = "directly" - _AbilityValueUsage_name_1 = "scaling with team Speedscaling with team Staminascaling with team Powerscaling with team Gutsscaling with team Wit" + _AbilityValueUsage_name_0 = "directlyscaling with the number of skillsscaling with team Speedscaling with team Staminascaling with team Powerscaling with team Gutsscaling with team Witwith a random 0× to 0.04× multiplierwith a random 0× to 0.04× multiplierscaling with the number of races won in training" + _AbilityValueUsage_name_1 = "scaling with the highest raw statscaling with the number of Passive skills activated" + _AbilityValueUsage_name_2 = "plus extra when far from the leadscaling with mid-race phase blocked side time" + _AbilityValueUsage_name_3 = "scaling with overall speedscaling with overall speedscaling with L'Arc global potentialscaling with the longest lead obtained in the first ⅔" ) var ( - _AbilityValueUsage_index_1 = [...]uint8{0, 23, 48, 71, 93, 114} + _AbilityValueUsage_index_0 = [...]uint16{0, 8, 41, 64, 89, 112, 134, 155, 193, 231, 279} + _AbilityValueUsage_index_1 = [...]uint8{0, 33, 84} + _AbilityValueUsage_index_2 = [...]uint8{0, 33, 78} + _AbilityValueUsage_index_3 = [...]uint8{0, 26, 52, 87, 142} ) func (i AbilityValueUsage) String() string { switch { - case i == 1: - return _AbilityValueUsage_name_0 - case 3 <= i && i <= 7: - i -= 3 + case 1 <= i && i <= 10: + i -= 1 + return _AbilityValueUsage_name_0[_AbilityValueUsage_index_0[i]:_AbilityValueUsage_index_0[i+1]] + case 13 <= i && i <= 14: + i -= 13 return _AbilityValueUsage_name_1[_AbilityValueUsage_index_1[i]:_AbilityValueUsage_index_1[i+1]] + case 19 <= i && i <= 20: + i -= 19 + return _AbilityValueUsage_name_2[_AbilityValueUsage_index_2[i]:_AbilityValueUsage_index_2[i+1]] + case 22 <= i && i <= 25: + i -= 22 + return _AbilityValueUsage_name_3[_AbilityValueUsage_index_3[i]:_AbilityValueUsage_index_3[i+1]] default: return "AbilityValueUsage(" + strconv.FormatInt(int64(i), 10) + ")" } diff --git a/horse/skill.go b/horse/skill.go index 288f690..e0fba56 100644 --- a/horse/skill.go +++ b/horse/skill.go @@ -126,12 +126,24 @@ type AbilityValueUsage int8 //go:generate go run golang.org/x/tools/cmd/stringer@v0.41.0 -type AbilityValueUsage -trimprefix ValueUsage -linecomment const ( - ValueUsageDirect AbilityValueUsage = 1 // directly - ValueUsageTeamSpeed AbilityValueUsage = 3 // scaling with team Speed - ValueUsageTeamStamina AbilityValueUsage = 4 // scaling with team Stamina - ValueUsageTeamPower AbilityValueUsage = 5 // scaling with team Power - ValueUsageTeamGuts AbilityValueUsage = 6 // scaling with team Guts - ValueUsageTeamWit AbilityValueUsage = 7 // scaling with team Wit + ValueUsageDirect AbilityValueUsage = 1 // directly + ValueUsageSkillCount AbilityValueUsage = 2 // scaling with the number of skills + ValueUsageTeamSpeed AbilityValueUsage = 3 // scaling with team Speed + ValueUsageTeamStamina AbilityValueUsage = 4 // scaling with team Stamina + ValueUsageTeamPower AbilityValueUsage = 5 // scaling with team Power + ValueUsageTeamGuts AbilityValueUsage = 6 // scaling with team Guts + ValueUsageTeamWit AbilityValueUsage = 7 // scaling with team Wit + ValueUsageRandom AbilityValueUsage = 8 // with a random 0× to 0.04× multiplier + ValueUsageRandom2 AbilityValueUsage = 9 // with a random 0× to 0.04× multiplier + ValueUsageClimax AbilityValueUsage = 10 // scaling with the number of races won in training + ValueUsageMaxStat AbilityValueUsage = 13 // scaling with the highest raw stat + ValueUsageGreenCount AbilityValueUsage = 14 // scaling with the number of Passive skills activated + ValueUsageDistAdd AbilityValueUsage = 19 // plus extra when far from the lead + ValueUsageMidSideBlock AbilityValueUsage = 20 // scaling with mid-race phase blocked side time + ValueUsageSpeed AbilityValueUsage = 22 // scaling with overall speed + ValueUsageSpeed2 AbilityValueUsage = 23 // scaling with overall speed + ValueUsageArcPotential AbilityValueUsage = 24 // scaling with L'Arc global potential + ValueUsageMaxLead AbilityValueUsage = 25 // scaling with the longest lead obtained in the first ⅔ ) type AbilityTarget int8