-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' of https://github.com/benpollarduk/BP.AdventureFr…
- Loading branch information
Showing
1 changed file
with
12 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# Architecture Overview | ||
|
||
## Overview | ||
NetAF has a simple architecture and understanding it will help when developing games. | ||
|
||
* A **Game** encapsulates all assets and provides top level logic. | ||
* When the **Game** is executing the following loop runs for the duration of the execution. | ||
* A **Game** accepts user input and passes it to its own **Interpreter** and the **Interpreter** for the current **GameMode** in order to process it. | ||
* The **Interpreter** tries to parse the input and return an instance of **Command**. | ||
* The returned **Command** is then invoked and returns a **Reaction** that details the result. | ||
* Some instances of **Command** deal with interactions between assets. In this case an **Interaction** between an **Item** and a target is invoked and the result returned the **Command** which will return an appropriate **Reaction**. | ||
* The **Game** processes the **Reaction** as required. |