Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documenting how the connections is used to implement the tile features #5

Open
nadinengland opened this issue Sep 3, 2017 · 1 comment

Comments

@nadinengland
Copy link
Contributor

nadinengland commented Sep 3, 2017

Currently, tiles Features are implementing as an enum to represent the various types, and a connections field is provided on the few that touch the edges of the tiles (Roads, doesn't include all that are included in the base game. Specifically, we are missing:

A Feature of a Tile can touch zero, one, or more cardinal direction of the Tile. In the event it touches non, as in the case of a Monastery, it exists as a simple enum with no struct fields. However, in the case it does touch a direction, like a City, it contains a connections field which lists all the sides it touches.

Rule 11

The part of the above image is represented as follows:

  • Bottom Left
    • Road: [North, East]
    • Field: [NorthNorthEast, NorthEastEast]
    • Field: [SouthEastEast, SouthWestWest, West, NorthWestWest, NorthNorthWest]
  • Bottom Right
    • Road: [North]
    • Field: [NorthNorthEast, NorthEastEast, East, SouthEastEast, SouthSouthEast]
    • Road: [South]
    • Field: [SouthSouthWest, SouthWestWest]
    • Road: [West]
    • Field: [NorthWestWest, NorthNorthWest]

Note: roads that terminate in the centre are represented as only touching one Direction.

@nadinengland
Copy link
Contributor Author

Pull request #4 change the directions from Cardinals to Simple Directions (e.g. Top, Left.) This reeds reflecting in the documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant