Updated Project structure and major classes (markdown)

Yair Morgenstern 2021-01-11 16:42:43 +02:00
parent aa113f8a7a
commit d046485305

@ -28,8 +28,10 @@ The Game State:
The UI:
* MainMenuScreen
* NewGameScreen
* WorldScreen
* CityScree
* CityScreen
* MapEditorScreen
* Picker Screens - TechPickerScreen, PolicyPickerScreen, ImprovementPickerScreen, PromotionPickerScreen
@ -127,6 +129,18 @@ The information for all of these is in json files in `android\assets\jsons`
When we change a screen, we're changing a value in UncivGame, the interesting stuff happens in the screens themselves.
## The main menu - `MainMenuScreen`
This is what the user sees when first entering the game. It acts as a hub to loading games, adding mods, options etc, without loading an actual game upfront - this allows us to differentiate between "User can't enter game" and "User can't load game" problems
## Starting a new game - `NewGameScreen`
This is basically a giant setting screen for GameOptions and MapOptions classes, divided into:
* GameOptionsTable - game speed, mods, etc
* MapOptionsTable - either from preexisting map file or generated, in which case: size, map generation type, etc.
* PlayerPickerTable - What civs are in the game and who controls them
## The World Screen - `WorldScreen`
90% of the game is spent on this screen, so naturally it's the fullest, with the most things happening.