| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- package board
- import "fmt"
- type TileType byte
- type jsonTile struct {
- X int `json:"x"`
- Y int `json:"y"`
- Type string `json:"type"`
- Player string `json:"player,omitempty"`
- }
- const (
- Water TileType = 0
- Rock TileType = 1
- Ice TileType = 2
- Iglo TileType = 3
- )
- func FromName(name string) TileType {
- switch name {
- case "W":
- return Water
- case "R":
- return Rock
- case "I":
- return Ice
- case "H":
- return Iglo
- }
- panic(fmt.Sprintf("Unknown tile type %v", name))
- }
- func (t TileType) String() string {
- switch t {
- case Water:
- return "~"
- case Rock:
- return "▲"
- case Ice:
- return "*"
- case Iglo:
- return "⌂"
- }
- panic(fmt.Sprintf("Unknown tile type %#v", t))
- }
- func (t TileType) Name() string {
- switch t {
- case Water:
- return "W" // API says WATER... zucht.
- case Rock:
- return "R"
- case Ice:
- return "I"
- case Iglo:
- return "H"
- }
- panic(fmt.Sprintf("Unknown tile type %#v", t))
- }
|