evac/README.md
2019-05-22 13:24:16 +12:00

55 lines
1.1 KiB
Markdown

# EVAC
tA's Rules Engine for the Neon Genesis Evangelion Trading Card Game.
## Getting Started
Currently only runs in GHCI
```haskell
:load Leads/Groups.hs ComBoard/Printer.hs ComBoard/Init.hs
import ComBoard.Printer
import ComBoard.Init
```
To print the representation of the initial board state
```haskell
printState initBS
```
`hurt` and `attract` are currently the only implemented main mechanics
```haskell
printState $ (hurt Rei Ritsuko)
. (attract Ritsuko Misato)
. (hurt Shinji Gendo)
. (attract Asuka Shinji)
$ initBS
```
returns:
```plaintext
== BOARD STATE ==
- Groups -
A ~ [ Ritsuko ] <-> BCE
B ~ [ Misato ] <-> AC
C ~ [ Asuka, Shinji ] <-> ABDE
D ~ [ Rei ] <-> CE
E ~ [ Gendo ] <-> ACD
- Downed -
~ Gendo
- GameLog -
Asuka attracts Shinji, both groups are joined
Shinji hurts Gendo, Gendo is downed!
Ritsuko attracts Misato, both groups are joined
Rei hurts Ritsuko, Ritsuko is seperated
=================
```
### Dependencies
`Data.List` and `Maybe (Data.Either)`
## Authors
* **Shaun Kerr** - [tA](https://git.lain.church/tA)