Map - ogrady/inf3project GitHub Wiki

The map is the playing board the game takes place on. It consists of a grid which holds the tiles (aka cells). Each tile can have several attributes:

  • UNWALKABLE: can't be passed
  • WATER: always paired with UNWALKABLE, but can be used to render certain portions of the map differently
  • FOREST: can become huntable
  • HUNTABLE: when a tile is huntable, staghunt can be started

As tiles can have multiple attributes, several mechanisms can be used to reflect them in the client-sided class: an array, a list, a bitmap, a linked list, one boolean per possible attribute etc., where some solutions make more sense than others.