add turn to BoardState and remove it from RoyaleRuleset (#52)
This commit is contained in:
parent
17556e15c1
commit
e9f408cdbb
4 changed files with 31 additions and 27 deletions
|
|
@ -134,8 +134,7 @@ var run = func(cmd *cobra.Command, args []string) {
|
|||
|
||||
snakes := buildSnakesFromOptions()
|
||||
|
||||
var ruleset rules.Ruleset
|
||||
ruleset = getRuleset(Seed, Turn, snakes)
|
||||
ruleset := getRuleset(Seed, snakes)
|
||||
state := initializeBoardFromArgs(ruleset, snakes)
|
||||
for _, snake := range snakes {
|
||||
Battlesnakes[snake.ID] = snake
|
||||
|
|
@ -143,8 +142,7 @@ var run = func(cmd *cobra.Command, args []string) {
|
|||
|
||||
for v := false; !v; v, _ = ruleset.IsGameOver(state) {
|
||||
Turn++
|
||||
ruleset = getRuleset(Seed, Turn, snakes)
|
||||
state = createNextBoardState(ruleset, state, snakes)
|
||||
state = createNextBoardState(ruleset, state, snakes, Turn)
|
||||
|
||||
if ViewMap {
|
||||
printMap(state, Turn)
|
||||
|
|
@ -178,7 +176,7 @@ var run = func(cmd *cobra.Command, args []string) {
|
|||
}
|
||||
}
|
||||
|
||||
func getRuleset(seed int64, gameTurn int32, snakes []Battlesnake) rules.Ruleset {
|
||||
func getRuleset(seed int64, snakes []Battlesnake) rules.Ruleset {
|
||||
var ruleset rules.Ruleset
|
||||
var royale rules.RoyaleRuleset
|
||||
|
||||
|
|
@ -193,7 +191,6 @@ func getRuleset(seed int64, gameTurn int32, snakes []Battlesnake) rules.Ruleset
|
|||
royale = rules.RoyaleRuleset{
|
||||
StandardRuleset: standard,
|
||||
Seed: seed,
|
||||
Turn: gameTurn,
|
||||
ShrinkEveryNTurns: 10,
|
||||
}
|
||||
ruleset = &royale
|
||||
|
|
@ -261,7 +258,7 @@ func initializeBoardFromArgs(ruleset rules.Ruleset, snakes []Battlesnake) *rules
|
|||
return state
|
||||
}
|
||||
|
||||
func createNextBoardState(ruleset rules.Ruleset, state *rules.BoardState, snakes []Battlesnake) *rules.BoardState {
|
||||
func createNextBoardState(ruleset rules.Ruleset, state *rules.BoardState, snakes []Battlesnake, turn int32) *rules.BoardState {
|
||||
var moves []rules.SnakeMove
|
||||
if Sequential {
|
||||
for _, snake := range snakes {
|
||||
|
|
@ -301,6 +298,9 @@ func createNextBoardState(ruleset rules.Ruleset, state *rules.BoardState, snakes
|
|||
log.Panic("[PANIC]: Error Producing Next Board State")
|
||||
panic(err)
|
||||
}
|
||||
|
||||
state.Turn = turn
|
||||
|
||||
return state
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue