blob: 981e42b24f62410ee39474f30e1aa6981ac0905e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# TODO
- Add unit tests
- Disassociate level to view, move view around if terminal too small
- Add equipment system
- Remove rendering logic from State
## Separate rendering logic
```
------- ---------
| main| -----> | State |
------- | ---------
|
| ------------
+-> | ViewPort |
------------
```
- Main game logic mutates State in reaction to player input
- Render is triggered by giving it a read-only reference to current state
- Heavy use of traits in ViewPort allows multiple type of viewports (Piston etc.)
|