59 lines
1.0 KiB
Go
59 lines
1.0 KiB
Go
package field
|
|
|
|
type Position struct {
|
|
row int
|
|
column int
|
|
blockRow int
|
|
blockColumn int
|
|
inBlockRow int
|
|
inBlockColumn int
|
|
}
|
|
|
|
func NewPosition(row, column, blockRow, blockColumn, inBlockRow, inBlockColumn int) *Position {
|
|
pos := Position{
|
|
row: row,
|
|
column: column,
|
|
blockRow: blockRow,
|
|
blockColumn: blockColumn,
|
|
inBlockRow: inBlockRow,
|
|
inBlockColumn: inBlockColumn,
|
|
}
|
|
return &pos
|
|
}
|
|
|
|
func (p *Position) GetRow() int {
|
|
return p.row
|
|
}
|
|
|
|
func (p *Position) GetColumn() int {
|
|
return p.column
|
|
}
|
|
|
|
func (p *Position) GetBlockRow() int {
|
|
return p.blockRow
|
|
}
|
|
|
|
func (p *Position) GetBlockColumn() int {
|
|
return p.blockColumn
|
|
}
|
|
|
|
func (p *Position) GetInBlockRow() int {
|
|
return p.inBlockRow
|
|
}
|
|
|
|
func (p *Position) GetInBlockColumn() int {
|
|
return p.inBlockColumn
|
|
}
|
|
|
|
func (p *Position) GetCoords() (int, int) {
|
|
return p.row, p.column
|
|
}
|
|
|
|
func (p *Position) GetBlockCoords() (int, int) {
|
|
return p.blockRow, p.blockColumn
|
|
}
|
|
|
|
func (p *Position) GetInBlockCoords() (int, int) {
|
|
return p.inBlockRow, p.inBlockColumn
|
|
}
|