Remove ruleset versions for GitHub release version (future).
This commit is contained in:
parent
9dba91619a
commit
72a74a9628
6 changed files with 8 additions and 13 deletions
|
|
@ -325,7 +325,7 @@ func getIndividualBoardStateForSnake(state *rules.BoardState, snake Battlesnake,
|
||||||
response := ResponsePayload{
|
response := ResponsePayload{
|
||||||
Game: GameResponse{Id: GameId, Timeout: Timeout, Ruleset: GameResponseRuleset{
|
Game: GameResponse{Id: GameId, Timeout: Timeout, Ruleset: GameResponseRuleset{
|
||||||
Name: ruleset.Name(),
|
Name: ruleset.Name(),
|
||||||
Version: ruleset.Version(),
|
Version: "cli", // TODO: Use GitHub Release Version
|
||||||
}},
|
}},
|
||||||
Turn: Turn,
|
Turn: Turn,
|
||||||
Board: BoardResponse{
|
Board: BoardResponse{
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,8 @@ type RoyaleRuleset struct {
|
||||||
OutOfBounds []Point
|
OutOfBounds []Point
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (r *RoyaleRuleset) Name() string { return "royale" }
|
||||||
|
|
||||||
func (r *RoyaleRuleset) CreateNextBoardState(prevState *BoardState, moves []SnakeMove) (*BoardState, error) {
|
func (r *RoyaleRuleset) CreateNextBoardState(prevState *BoardState, moves []SnakeMove) (*BoardState, error) {
|
||||||
if r.ShrinkEveryNTurns < 1 {
|
if r.ShrinkEveryNTurns < 1 {
|
||||||
return nil, errors.New("royale game must shrink at least every turn")
|
return nil, errors.New("royale game must shrink at least every turn")
|
||||||
|
|
@ -55,10 +57,6 @@ func (r *RoyaleRuleset) CreateNextBoardState(prevState *BoardState, moves []Snak
|
||||||
return nextBoardState, nil
|
return nextBoardState, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *RoyaleRuleset) Name() string { return "royale" }
|
|
||||||
|
|
||||||
func (r *RoyaleRuleset) Version() string { return "1.0.0" }
|
|
||||||
|
|
||||||
func (r *RoyaleRuleset) populateOutOfBounds(b *BoardState, turn int32) error {
|
func (r *RoyaleRuleset) populateOutOfBounds(b *BoardState, turn int32) error {
|
||||||
r.OutOfBounds = []Point{}
|
r.OutOfBounds = []Point{}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -59,9 +59,8 @@ type SnakeMove struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type Ruleset interface {
|
type Ruleset interface {
|
||||||
|
Name() string
|
||||||
CreateInitialBoardState(width int32, height int32, snakeIDs []string) (*BoardState, error)
|
CreateInitialBoardState(width int32, height int32, snakeIDs []string) (*BoardState, error)
|
||||||
CreateNextBoardState(prevState *BoardState, moves []SnakeMove) (*BoardState, error)
|
CreateNextBoardState(prevState *BoardState, moves []SnakeMove) (*BoardState, error)
|
||||||
IsGameOver(state *BoardState) (bool, error)
|
IsGameOver(state *BoardState) (bool, error)
|
||||||
Name() string
|
|
||||||
Version() string
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
4
solo.go
4
solo.go
|
|
@ -4,6 +4,8 @@ type SoloRuleset struct {
|
||||||
StandardRuleset
|
StandardRuleset
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (r *SoloRuleset) Name() string { return "solo" }
|
||||||
|
|
||||||
func (r *SoloRuleset) IsGameOver(b *BoardState) (bool, error) {
|
func (r *SoloRuleset) IsGameOver(b *BoardState) (bool, error) {
|
||||||
for i := 0; i < len(b.Snakes); i++ {
|
for i := 0; i < len(b.Snakes); i++ {
|
||||||
if b.Snakes[i].EliminatedCause == NotEliminated {
|
if b.Snakes[i].EliminatedCause == NotEliminated {
|
||||||
|
|
@ -12,5 +14,3 @@ func (r *SoloRuleset) IsGameOver(b *BoardState) (bool, error) {
|
||||||
}
|
}
|
||||||
return true, nil
|
return true, nil
|
||||||
}
|
}
|
||||||
func (r *SoloRuleset) Name() string { return "solo" }
|
|
||||||
func (r *SoloRuleset) Version() string { return "1.0.0" }
|
|
||||||
|
|
|
||||||
1
squad.go
1
squad.go
|
|
@ -19,7 +19,6 @@ type SquadRuleset struct {
|
||||||
const EliminatedBySquad = "squad-eliminated"
|
const EliminatedBySquad = "squad-eliminated"
|
||||||
|
|
||||||
func (r *SquadRuleset) Name() string { return "squad" }
|
func (r *SquadRuleset) Name() string { return "squad" }
|
||||||
func (r *SquadRuleset) Version() string { return "1.0.0" }
|
|
||||||
|
|
||||||
func (r *SquadRuleset) CreateNextBoardState(prevState *BoardState, moves []SnakeMove) (*BoardState, error) {
|
func (r *SquadRuleset) CreateNextBoardState(prevState *BoardState, moves []SnakeMove) (*BoardState, error) {
|
||||||
nextBoardState, err := r.StandardRuleset.CreateNextBoardState(prevState, moves)
|
nextBoardState, err := r.StandardRuleset.CreateNextBoardState(prevState, moves)
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,6 @@ type StandardRuleset struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *StandardRuleset) Name() string { return "standard" }
|
func (r *StandardRuleset) Name() string { return "standard" }
|
||||||
func (r *StandardRuleset) Version() string { return "1.0.0" }
|
|
||||||
|
|
||||||
func (r *StandardRuleset) CreateInitialBoardState(width int32, height int32, snakeIDs []string) (*BoardState, error) {
|
func (r *StandardRuleset) CreateInitialBoardState(width int32, height int32, snakeIDs []string) (*BoardState, error) {
|
||||||
initialBoardState := &BoardState{
|
initialBoardState := &BoardState{
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue