mirror of
https://github.com/swarm-game/swarm.git
synced 2024-08-17 18:41:02 +03:00
Closes #795 ![image](https://user-images.githubusercontent.com/261693/210162423-4dadf9d8-8e32-437f-b854-b7106dd4bbe8.png) ![Screenshot from 2022-12-31 22-58-59](https://user-images.githubusercontent.com/261693/210163446-e53c4abd-7bc1-4271-8a7c-cf0165f9ced8.png) ![image](https://user-images.githubusercontent.com/261693/210162466-3d3ae29e-9b35-44e6-93bc-df1efe59d7e9.png) ## Tasks - [x] Vendor a subset of the `boolexpr` package - [x] New display logic for parallel goals - [x] Add a check for whether winning is impossible (due to a "not" prerequisite being achieved) - [x] Add a "Lose" dialog analogous to the "Win" dialog - [x] Validate no dependency cycles in prerequisites specs - [x] Add tests for negative validation result from scenario parsing - [x] Web API to inspect status of incomplete, completed, optional, and prerequisite objectives - [x] Update all of the multi-goal scenarios to use prerequisites ## For follow-up PRs: - [ ] Upload new GHC8-compatible version of `boolexpr` to Hackage (perhaps [take over the package](https://wiki.haskell.org/Taking_over_a_package)?) - [ ] Add prerequisites and its logical operators to JSON schema - [ ] Reverse topological sort of goals before evaluation, with a test that demonstrates necessity - [ ] Automatically skip over the header rows when navigating the Goals list - [ ] Add indicators for optional and hidden goals - [ ] New Challenge for strategizing optional and mutually-exclusive goals
24 lines
194 B
Plaintext
24 lines
194 B
Plaintext
*~
|
|
dist-newstyle/
|
|
TAGS
|
|
|
|
.vscode/
|
|
|
|
cabal.project.local
|
|
hie.yaml
|
|
|
|
.stack-work/
|
|
.stack-work-test/
|
|
stack.yaml.lock
|
|
.hie/
|
|
stan.html
|
|
|
|
.swarm_history
|
|
|
|
*.orig
|
|
*.aux
|
|
*.log
|
|
docs/ott/*.tex
|
|
|
|
.dir-locals.el
|