horsegen: generate sparks
This commit is contained in:
87
horse/spark.go
Normal file
87
horse/spark.go
Normal file
@@ -0,0 +1,87 @@
|
||||
package horse
|
||||
|
||||
type (
|
||||
SparkID int32
|
||||
SparkGroupID int32
|
||||
)
|
||||
|
||||
type Spark struct {
|
||||
ID SparkID
|
||||
Name string
|
||||
Description string
|
||||
Group SparkGroupID
|
||||
Rarity SparkRarity
|
||||
Type SparkType
|
||||
Effects [][]SparkEffect
|
||||
}
|
||||
|
||||
type SparkType int8
|
||||
|
||||
//go:generate go run golang.org/x/tools/cmd/stringer@v0.41.0 -type SparkType -trimprefix Spark
|
||||
const (
|
||||
SparkStat SparkType = iota + 1
|
||||
SparkAptitude
|
||||
SparkUnique
|
||||
SparkSkill
|
||||
SparkRace
|
||||
SparkScenario
|
||||
SparkCarnival
|
||||
SparkDistance
|
||||
SparkHidden
|
||||
SparkSurface
|
||||
SparkStyle
|
||||
)
|
||||
|
||||
type SparkRarity int8
|
||||
|
||||
const (
|
||||
OneStar SparkRarity = iota + 1 // ★
|
||||
TwoStar // ★★
|
||||
ThreeStar // ★★★
|
||||
)
|
||||
|
||||
func (r SparkRarity) String() string {
|
||||
const s = "★★★"
|
||||
return s[:int(r)*len("★")]
|
||||
}
|
||||
|
||||
type SparkEffect struct {
|
||||
Target SparkTarget
|
||||
Value1 int32
|
||||
Value2 int32
|
||||
}
|
||||
|
||||
type SparkTarget int8
|
||||
|
||||
//go:generate go run golang.org/x/tools/cmd/stringer@v0.41.0 -type SparkTarget -trimprefix Spark
|
||||
const (
|
||||
SparkSpeed SparkTarget = iota + 1
|
||||
SparkStam
|
||||
SparkPower
|
||||
SparkGuts
|
||||
SparkWit
|
||||
SparkSkillPoints
|
||||
SparkRandomStat
|
||||
|
||||
SparkTurf SparkTarget = 11
|
||||
SparkDirt SparkTarget = 12
|
||||
|
||||
SparkFrontRunner SparkTarget = iota + 12
|
||||
SparkPaceChaser
|
||||
SparkLateSurger
|
||||
SparkEndCloser
|
||||
|
||||
SparkSprint SparkTarget = iota + 18
|
||||
SparkMile
|
||||
SparkMedium
|
||||
SparkLong
|
||||
|
||||
SparkSkillHint SparkTarget = 41
|
||||
SparkCarnivalBonus SparkTarget = 51
|
||||
|
||||
SparkSpeedCap SparkTarget = iota + 42
|
||||
SparkStamCap
|
||||
SparkPowerCap
|
||||
SparkGutsCap
|
||||
SparkWitCap
|
||||
)
|
||||
Reference in New Issue
Block a user