Documentation
¶
Index ¶
Constants ¶
View Source
const BLOCKS_SIZE uint32 = 4
Variables ¶
This section is empty.
Functions ¶
func FilterZeroIndices ¶
func FilterZeroIndices(bs BlockArray) (r []int)
func IsPossibleToShiftAndMerge ¶
func IsPossibleToShiftAndMerge(ba BlockArray, sd ShiftDirection) (isPossible bool)
Types ¶
type Block ¶
type Block uint32
func MakeDefaultBlock ¶
func MergeBlocks ¶
func ShiftAndMergeBlocks ¶
func ShiftBlocks ¶
New block slice, isChanged
type BlockArray ¶
type BlockArray [BLOCKS_SIZE * BLOCKS_SIZE]Block
func SampleDown ¶
func SampleDown(ba BlockArray) (nba BlockArray)
func SampleLeft ¶
func SampleLeft(ba BlockArray) (nba BlockArray)
func SampleRight ¶
func SampleRight(ba BlockArray) BlockArray
func SampleUp ¶
func SampleUp(ba BlockArray) (nba BlockArray)
func ShiftAndMergeBlockArray ¶
func ShiftAndMergeBlockArray(ba BlockArray, sd ShiftDirection) (nba BlockArray)
func (*BlockArray) IterBlocks ¶
func (ba *BlockArray) IterBlocks() func() []Block
type GameState ¶
type GameState struct {
BlockA BlockArray
Ticker uint32
StartTime time.Time
}
func (*GameState) InitRandomBlock ¶
func (gt *GameState) InitRandomBlock()
func (*GameState) Process ¶
func (gt *GameState) Process(sd ShiftDirection) StatusCode
type SampleFunc ¶
type SampleFunc func(BlockArray) BlockArray
func ShiftDirectionToSampleFunc ¶
func ShiftDirectionToSampleFunc(sd ShiftDirection) SampleFunc
type ShiftDirection ¶
type ShiftDirection int
const ( UP ShiftDirection = iota DOWN LEFT RIGHT )
func GetPossibleDirections ¶
func GetPossibleDirections(ba BlockArray) (directions []ShiftDirection)
Click to show internal directories.
Click to hide internal directories.