skeleton: Added some classes and functions

This commit is contained in:
Nathan Woodburn 2023-03-14 15:09:33 +11:00
parent 47ff74a6f4
commit eb52216090
Signed by: nathanwoodburn
GPG Key ID: 203B000478AD0EF1

View File

@ -1,10 +1,12 @@
# Simple draft skeleton: # Simple draft skeleton:
# Overview
## Board Setup ## Board Setup
* Create a grid of tiles * Create a grid of tiles
* Create islands and assign size and location (on tiles) * Create islands and assign size and location (on tiles)
* Create "stone circles" * Create "stone circles"
## On Game start functions ## On Game start functions
* Create player data (maybe using enums) * Create player data (maybe using enums)
* Assign villages to players * Assign villages to players
@ -16,7 +18,6 @@
2. Player places piece (use function to check placement rules) 2. Player places piece (use function to check placement rules)
3. Repeat with next player (while not Exploration Phase over) 3. Repeat with next player (while not Exploration Phase over)
## Check Placement ## Check Placement
If piece is settler, check if one of: If piece is settler, check if one of:
* on unoccupied water * on unoccupied water
@ -24,15 +25,46 @@ If piece is settler, check if one of:
If piece is village, check on unoccupied land adjacent to one of their pieces If piece is village, check on unoccupied land adjacent to one of their pieces
## Piece Placing ## Piece Placing
* Check placement (using function) * Check placement (using function)
* Assign piece to tile * Assign piece to tile
* If piece on "stone circle" > get resources and statuettes * If piece on "stone circle" > get resources and statuettes
## Exploration Phase over ## Exploration Phase over
If one of: If one of:
* All resources (not including statuettes) have been collected * All resources (not including statuettes) have been collected
* No player has any remaining moves available * No player has any remaining moves available
# Classes/Fuctions
## Setup board
## Create player (requires input data, probably from player number and colour)
## Exploration Phase
## Check Placement (requires input data, probably piece annd returns bool)
## Place Piece (requires input data, probably from player and piece type)
## Exploration Phase over (bool)
# Objects
## Piece
* Owner (Player)
* Type (Settler, Village)
* Placed on (Tile)
## Tile
* Location (x,y)
* Type (Land, Water)
* Pieces (List of Pieces)
## Island
* Size (x,y)
* Location (x,y)
* Point value (int)
## Stone Circle
* Location (x,y)
* Resources (List of Resources)
* Statuettes (List of Statuettes)
* Claimed (bool)