Documentation
¶
Index ¶
- Constants
- Variables
- func AnySize() sizes
- func FixedSizes(a Dimensions, b ...Dimensions) sizes
- func List() []string
- func OddSizes(min, max uint) sizes
- func RegisterMap(id string, m GameMap)
- func SetupBoard(mapID string, settings rules.Settings, width, height int, snakeIDs []string) (*rules.BoardState, error)
- func TestMap(id string, m GameMap, callback func())
- func UpdateBoard(mapID string, previousBoardState *rules.BoardState, settings rules.Settings) (*rules.BoardState, error)
- type ArcadeMazeMap
- func (m ArcadeMazeMap) ID() string
- func (m ArcadeMazeMap) Meta() Metadata
- func (m ArcadeMazeMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m ArcadeMazeMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type BoardStateEditor
- func (editor *BoardStateEditor) AddFood(p rules.Point)
- func (editor *BoardStateEditor) AddHazard(p rules.Point)
- func (editor *BoardStateEditor) ClearFood()
- func (editor *BoardStateEditor) ClearHazards()
- func (editor *BoardStateEditor) PlaceSnake(id string, body []rules.Point, health int)
- func (editor *BoardStateEditor) RemoveFood(p rules.Point)
- func (editor *BoardStateEditor) RemoveHazard(p rules.Point)
- type ColumnsHazardsMap
- func (m ColumnsHazardsMap) ID() string
- func (m ColumnsHazardsMap) Meta() Metadata
- func (m ColumnsHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m ColumnsHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type ConcentricRingsHazardsMap
- func (m ConcentricRingsHazardsMap) ID() string
- func (m ConcentricRingsHazardsMap) Meta() Metadata
- func (m ConcentricRingsHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m ConcentricRingsHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type Dimensions
- type DirectionalExpandingBoxMap
- func (m DirectionalExpandingBoxMap) ID() string
- func (m DirectionalExpandingBoxMap) Meta() Metadata
- func (m DirectionalExpandingBoxMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m DirectionalExpandingBoxMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type Editor
- type EmptyMap
- type ExpandingBoxMap
- func (m ExpandingBoxMap) ID() string
- func (m ExpandingBoxMap) Meta() Metadata
- func (m ExpandingBoxMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m ExpandingBoxMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type ExpandingScatterMap
- func (m ExpandingScatterMap) ID() string
- func (m ExpandingScatterMap) Meta() Metadata
- func (m ExpandingScatterMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m ExpandingScatterMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type GameMap
- type HealingPoolsMap
- func (m HealingPoolsMap) ID() string
- func (m HealingPoolsMap) Meta() Metadata
- func (m HealingPoolsMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m HealingPoolsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type InnerBorderHazardsMap
- func (m InnerBorderHazardsMap) ID() string
- func (m InnerBorderHazardsMap) Meta() Metadata
- func (m InnerBorderHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m InnerBorderHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type MapRegistry
- type Metadata
- type RiverAndBridgesHazardsMap
- func (m RiverAndBridgesHazardsMap) ID() string
- func (m RiverAndBridgesHazardsMap) Meta() Metadata
- func (m RiverAndBridgesHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m RiverAndBridgesHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type RoyaleHazardsMap
- func (m RoyaleHazardsMap) ID() string
- func (m RoyaleHazardsMap) Meta() Metadata
- func (m RoyaleHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m RoyaleHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type ScatterFillMap
- func (m ScatterFillMap) ID() string
- func (m ScatterFillMap) Meta() Metadata
- func (m ScatterFillMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m ScatterFillMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type SinkholesMap
- func (m SinkholesMap) ID() string
- func (m SinkholesMap) Meta() Metadata
- func (m SinkholesMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m SinkholesMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type SoloMazeMap
- func (m SoloMazeMap) AdjustPosition(mazePosition rules.Point, actualBoardSize int, boardHeight int, boardWidth int) rules.Point
- func (m SoloMazeMap) CreateMaze(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor, ...) error
- func (m SoloMazeMap) ID() string
- func (m SoloMazeMap) Meta() Metadata
- func (m SoloMazeMap) PlaceFood(boardState *rules.BoardState, settings rules.Settings, editor Editor, ...)
- func (m SoloMazeMap) ReadBitState(boardState *rules.BoardState) (int64, error)
- func (m SoloMazeMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m SoloMazeMap) SubdivideRoom(tempBoardState *rules.BoardState, rand rules.Rand, lowPoint rules.Point, ...) bool
- func (m SoloMazeMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m SoloMazeMap) WriteBitState(boardState *rules.BoardState, state int64, editor Editor)
- type SpiralHazardsMap
- func (m SpiralHazardsMap) ID() string
- func (m SpiralHazardsMap) Meta() Metadata
- func (m SpiralHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- func (m SpiralHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
- type StandardMap
- type StubMap
Constants ¶
const DEBUG_MAZE_GENERATION = false
When this is flipped to `true` TWO things happen
- More println style debugging is done
- We print out the current game board in between each room sub-division, and wait for the CLI User to hit enter to sub-divide the next room. This allows you to see the maze get generated in realtime, which was super useful while debugging issues in the maze generation
const EVIL_MODE_DISTANCE_TO_FOOD = 5
const INITIAL_MAZE_SIZE = 7
const MAX_TRIES = 100
const TURNS_AT_MAX_SIZE = 5
Variables ¶
var ArcadeMazeHazards []rules.Point = []rules.Point{}/* 187 elements not displayed */
Functions ¶
func AnySize ¶ added in v1.1.10
func AnySize() sizes
AnySize creates sizes for a board that has no fixed sizes (supports unlimited sizes).
func FixedSizes ¶ added in v1.1.10
func FixedSizes(a Dimensions, b ...Dimensions) sizes
FixedSizes creates dimensions for a board that has 1 or more fixed sizes. Examples: - FixedSizes(Dimension{9,11}) supports only a width of 9 and a height of 11. - FixedSizes(Dimensions{11,11},Dimensions{19,19}) supports sizes 11x11 and 19x19
func List ¶ added in v1.1.15
func List() []string
List returns a list of maps registered to the global registry.
func OddSizes ¶ added in v1.1.13
func OddSizes(min, max uint) sizes
OddSizes generates square (width = height) board sizes with an odd number of positions in the vertical and horizontal directions. Examples:
- OddSizes(11,21) produces [(11,11), (13,13), (15,15), (17,17), (19,19), (21,21)]
func RegisterMap ¶
RegisterMap adds a map to the global registry.
func SetupBoard ¶
func SetupBoard(mapID string, settings rules.Settings, width, height int, snakeIDs []string) (*rules.BoardState, error)
SetupBoard is a shortcut for looking up a map by ID and initializing a new board state with it.
func UpdateBoard ¶
func UpdateBoard(mapID string, previousBoardState *rules.BoardState, settings rules.Settings) (*rules.BoardState, error)
UpdateBoard is a shortcut for looking up a map by ID and updating an existing board state with it.
Types ¶
type ArcadeMazeMap ¶ added in v1.1.5
type ArcadeMazeMap struct{}
func (ArcadeMazeMap) ID ¶ added in v1.1.5
func (m ArcadeMazeMap) ID() string
func (ArcadeMazeMap) Meta ¶ added in v1.1.5
func (m ArcadeMazeMap) Meta() Metadata
func (ArcadeMazeMap) SetupBoard ¶ added in v1.1.5
func (m ArcadeMazeMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (ArcadeMazeMap) UpdateBoard ¶ added in v1.1.5
func (m ArcadeMazeMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type BoardStateEditor ¶
type BoardStateEditor struct {
*rules.BoardState
}
An Editor backed by a BoardState.
func NewBoardStateEditor ¶
func NewBoardStateEditor(boardState *rules.BoardState) *BoardStateEditor
func (*BoardStateEditor) AddFood ¶
func (editor *BoardStateEditor) AddFood(p rules.Point)
func (*BoardStateEditor) AddHazard ¶
func (editor *BoardStateEditor) AddHazard(p rules.Point)
func (*BoardStateEditor) ClearFood ¶
func (editor *BoardStateEditor) ClearFood()
func (*BoardStateEditor) ClearHazards ¶
func (editor *BoardStateEditor) ClearHazards()
func (*BoardStateEditor) PlaceSnake ¶
func (editor *BoardStateEditor) PlaceSnake(id string, body []rules.Point, health int)
func (*BoardStateEditor) RemoveFood ¶
func (editor *BoardStateEditor) RemoveFood(p rules.Point)
func (*BoardStateEditor) RemoveHazard ¶
func (editor *BoardStateEditor) RemoveHazard(p rules.Point)
type ColumnsHazardsMap ¶ added in v1.1.6
type ColumnsHazardsMap struct{}
func (ColumnsHazardsMap) ID ¶ added in v1.1.6
func (m ColumnsHazardsMap) ID() string
func (ColumnsHazardsMap) Meta ¶ added in v1.1.6
func (m ColumnsHazardsMap) Meta() Metadata
func (ColumnsHazardsMap) SetupBoard ¶ added in v1.1.6
func (m ColumnsHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (ColumnsHazardsMap) UpdateBoard ¶ added in v1.1.6
func (m ColumnsHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type ConcentricRingsHazardsMap ¶ added in v1.1.6
type ConcentricRingsHazardsMap struct{}
func (ConcentricRingsHazardsMap) ID ¶ added in v1.1.6
func (m ConcentricRingsHazardsMap) ID() string
func (ConcentricRingsHazardsMap) Meta ¶ added in v1.1.6
func (m ConcentricRingsHazardsMap) Meta() Metadata
func (ConcentricRingsHazardsMap) SetupBoard ¶ added in v1.1.6
func (m ConcentricRingsHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (ConcentricRingsHazardsMap) UpdateBoard ¶ added in v1.1.6
func (m ConcentricRingsHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type Dimensions ¶ added in v1.1.10
type Dimensions struct {
// Width is the width, in number of board squares, of the board.
// The value 0 has a special meaning to mean unlimited.
Width uint
// Height is the height, in number of board squares, of the board.
// The value 0 has a special meaning to mean unlimited.
Height uint
}
Dimensions describes the size of a Battlesnake board.
type DirectionalExpandingBoxMap ¶ added in v1.1.6
type DirectionalExpandingBoxMap struct{}
func (DirectionalExpandingBoxMap) ID ¶ added in v1.1.6
func (m DirectionalExpandingBoxMap) ID() string
func (DirectionalExpandingBoxMap) Meta ¶ added in v1.1.6
func (m DirectionalExpandingBoxMap) Meta() Metadata
func (DirectionalExpandingBoxMap) SetupBoard ¶ added in v1.1.6
func (m DirectionalExpandingBoxMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (DirectionalExpandingBoxMap) UpdateBoard ¶ added in v1.1.6
func (m DirectionalExpandingBoxMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type Editor ¶
type Editor interface {
// Clears all food from the board.
ClearFood()
// Clears all hazards from the board.
ClearHazards()
// Adds a food to the board. Does not check for duplicates.
AddFood(rules.Point)
// Adds a hazard to the board. Does not check for duplicates.
AddHazard(rules.Point)
// Removes all food from a specific tile on the board.
RemoveFood(rules.Point)
// Removes all hazards from a specific tile on the board.
RemoveHazard(rules.Point)
// Updates the body and health of a snake.
PlaceSnake(id string, body []rules.Point, health int)
}
Editor is used by GameMap implementations to modify the board state.
type EmptyMap ¶ added in v1.1.2
type EmptyMap struct{}
func (EmptyMap) SetupBoard ¶ added in v1.1.2
func (EmptyMap) UpdateBoard ¶ added in v1.1.2
type ExpandingBoxMap ¶ added in v1.1.6
type ExpandingBoxMap struct{}
func (ExpandingBoxMap) ID ¶ added in v1.1.6
func (m ExpandingBoxMap) ID() string
func (ExpandingBoxMap) Meta ¶ added in v1.1.6
func (m ExpandingBoxMap) Meta() Metadata
func (ExpandingBoxMap) SetupBoard ¶ added in v1.1.6
func (m ExpandingBoxMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (ExpandingBoxMap) UpdateBoard ¶ added in v1.1.6
func (m ExpandingBoxMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type ExpandingScatterMap ¶ added in v1.1.6
type ExpandingScatterMap struct{}
func (ExpandingScatterMap) ID ¶ added in v1.1.6
func (m ExpandingScatterMap) ID() string
func (ExpandingScatterMap) Meta ¶ added in v1.1.6
func (m ExpandingScatterMap) Meta() Metadata
func (ExpandingScatterMap) SetupBoard ¶ added in v1.1.6
func (m ExpandingScatterMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (ExpandingScatterMap) UpdateBoard ¶ added in v1.1.6
func (m ExpandingScatterMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type GameMap ¶
type GameMap interface {
// Return a unique identifier for this map.
ID() string
// Return non-functional metadata about this map.
Meta() Metadata
// Called to generate a new board. The map is responsible for placing all snakes, food, and hazards.
SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
// Called every turn to optionally update the board.
UpdateBoard(previousBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
}
type HealingPoolsMap ¶ added in v1.1.14
type HealingPoolsMap struct{}
func (HealingPoolsMap) ID ¶ added in v1.1.14
func (m HealingPoolsMap) ID() string
func (HealingPoolsMap) Meta ¶ added in v1.1.14
func (m HealingPoolsMap) Meta() Metadata
func (HealingPoolsMap) SetupBoard ¶ added in v1.1.14
func (m HealingPoolsMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (HealingPoolsMap) UpdateBoard ¶ added in v1.1.14
func (m HealingPoolsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type InnerBorderHazardsMap ¶ added in v1.1.6
type InnerBorderHazardsMap struct{}
func (InnerBorderHazardsMap) ID ¶ added in v1.1.6
func (m InnerBorderHazardsMap) ID() string
func (InnerBorderHazardsMap) Meta ¶ added in v1.1.6
func (m InnerBorderHazardsMap) Meta() Metadata
func (InnerBorderHazardsMap) SetupBoard ¶ added in v1.1.6
func (m InnerBorderHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (InnerBorderHazardsMap) UpdateBoard ¶ added in v1.1.6
func (m InnerBorderHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type MapRegistry ¶
MapRegistry is a mapping of map names to game maps.
func (MapRegistry) GetMap ¶
func (registry MapRegistry) GetMap(id string) (GameMap, error)
GetMap returns the map associated with the given ID.
func (MapRegistry) List ¶ added in v1.1.15
func (registry MapRegistry) List() []string
List returns all registered map IDs in alphabetical order
func (MapRegistry) RegisterMap ¶
func (registry MapRegistry) RegisterMap(id string, m GameMap)
RegisterMap adds a stage to the registry. If a map has already been registered this will panic.
type Metadata ¶
type Metadata struct {
Name string
Author string
Description string
// Version is the current version of the game map.
// Each time a map is changed, the version number should be incremented by 1.
Version uint
// MinPlayers is the minimum number of players that the map supports.
MinPlayers uint
// MaxPlayers is the maximum number of players that the map supports.
MaxPlayers uint
// BoardSizes is a list of supported board sizes. Board sizes can fall into one of 3 categories:
// 1. one fixed size (i.e. [11x11])
// 2. multiple, fixed sizes (i.e. [11x11, 19x19, 25x25])
// 3. "unlimited" sizes (the board is not fixed and can scale to any reasonable size)
BoardSizes sizes
}
type RiverAndBridgesHazardsMap ¶ added in v1.1.6
type RiverAndBridgesHazardsMap struct{}
func (RiverAndBridgesHazardsMap) ID ¶ added in v1.1.6
func (m RiverAndBridgesHazardsMap) ID() string
func (RiverAndBridgesHazardsMap) Meta ¶ added in v1.1.6
func (m RiverAndBridgesHazardsMap) Meta() Metadata
func (RiverAndBridgesHazardsMap) SetupBoard ¶ added in v1.1.6
func (m RiverAndBridgesHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (RiverAndBridgesHazardsMap) UpdateBoard ¶ added in v1.1.6
func (m RiverAndBridgesHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type RoyaleHazardsMap ¶ added in v1.1.2
type RoyaleHazardsMap struct{}
func (RoyaleHazardsMap) ID ¶ added in v1.1.2
func (m RoyaleHazardsMap) ID() string
func (RoyaleHazardsMap) Meta ¶ added in v1.1.2
func (m RoyaleHazardsMap) Meta() Metadata
func (RoyaleHazardsMap) SetupBoard ¶ added in v1.1.2
func (m RoyaleHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (RoyaleHazardsMap) UpdateBoard ¶ added in v1.1.2
func (m RoyaleHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type ScatterFillMap ¶ added in v1.1.6
type ScatterFillMap struct{}
func (ScatterFillMap) ID ¶ added in v1.1.6
func (m ScatterFillMap) ID() string
func (ScatterFillMap) Meta ¶ added in v1.1.6
func (m ScatterFillMap) Meta() Metadata
func (ScatterFillMap) SetupBoard ¶ added in v1.1.6
func (m ScatterFillMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (ScatterFillMap) UpdateBoard ¶ added in v1.1.6
func (m ScatterFillMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type SinkholesMap ¶ added in v1.1.14
type SinkholesMap struct{}
func (SinkholesMap) ID ¶ added in v1.1.14
func (m SinkholesMap) ID() string
func (SinkholesMap) Meta ¶ added in v1.1.14
func (m SinkholesMap) Meta() Metadata
func (SinkholesMap) SetupBoard ¶ added in v1.1.14
func (m SinkholesMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (SinkholesMap) UpdateBoard ¶ added in v1.1.14
func (m SinkholesMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type SoloMazeMap ¶ added in v1.1.12
type SoloMazeMap struct{}
func (SoloMazeMap) AdjustPosition ¶ added in v1.1.12
func (SoloMazeMap) CreateMaze ¶ added in v1.1.12
func (m SoloMazeMap) CreateMaze(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor, currentLevel int64) error
func (SoloMazeMap) ID ¶ added in v1.1.12
func (m SoloMazeMap) ID() string
func (SoloMazeMap) Meta ¶ added in v1.1.12
func (m SoloMazeMap) Meta() Metadata
func (SoloMazeMap) PlaceFood ¶ added in v1.1.12
func (m SoloMazeMap) PlaceFood(boardState *rules.BoardState, settings rules.Settings, editor Editor, currentLevel int64)
func (SoloMazeMap) ReadBitState ¶ added in v1.1.12
func (m SoloMazeMap) ReadBitState(boardState *rules.BoardState) (int64, error)
func (SoloMazeMap) SetupBoard ¶ added in v1.1.12
func (m SoloMazeMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (SoloMazeMap) SubdivideRoom ¶ added in v1.1.12
func (m SoloMazeMap) SubdivideRoom(tempBoardState *rules.BoardState, rand rules.Rand, lowPoint rules.Point, highPoint rules.Point, disAllowedHorizontal []int, disAllowedVertical []int, depth int) bool
Mostly based off this algorithm from Wikipedia: https://en.wikipedia.org/wiki/Maze_generation_algorithm#Recursive_division_method
func (SoloMazeMap) UpdateBoard ¶ added in v1.1.12
func (m SoloMazeMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (SoloMazeMap) WriteBitState ¶ added in v1.1.12
func (m SoloMazeMap) WriteBitState(boardState *rules.BoardState, state int64, editor Editor)
type SpiralHazardsMap ¶ added in v1.1.6
type SpiralHazardsMap struct{}
func (SpiralHazardsMap) ID ¶ added in v1.1.6
func (m SpiralHazardsMap) ID() string
func (SpiralHazardsMap) Meta ¶ added in v1.1.6
func (m SpiralHazardsMap) Meta() Metadata
func (SpiralHazardsMap) SetupBoard ¶ added in v1.1.6
func (m SpiralHazardsMap) SetupBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (SpiralHazardsMap) UpdateBoard ¶ added in v1.1.6
func (m SpiralHazardsMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type StandardMap ¶
type StandardMap struct{}
func (StandardMap) ID ¶
func (m StandardMap) ID() string
func (StandardMap) Meta ¶
func (m StandardMap) Meta() Metadata
func (StandardMap) SetupBoard ¶
func (m StandardMap) SetupBoard(initialBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
func (StandardMap) UpdateBoard ¶
func (m StandardMap) UpdateBoard(lastBoardState *rules.BoardState, settings rules.Settings, editor Editor) error
type StubMap ¶ added in v1.1.1
type StubMap struct {
Id string
SnakePositions map[string]rules.Point
Food []rules.Point
Hazards []rules.Point
Error error
}
An implementation of GameMap that just does predetermined placements, for testing.