No description
Rather than having a single function in the Game.Lenses module for determining what collision type if any an entity has, track it in the Entity typeclass itself. This is both more extensible and a better separation of concerns and gets rid of one of the two needs for a circular import. Yay! As part of this, I realized nothing was being done to prevent doors from being placed on tiles that already had walls (since now that was properly causing a collision!) so I've fixed that as well. |
||
|---|---|---|
| .github | ||
| build | ||
| src | ||
| test | ||
| .gitignore | ||
| default.nix | ||
| haskell-overlay.nix | ||
| hie.sh | ||
| LICENSE | ||
| nixpkgs.nix | ||
| package.yaml | ||
| pkg.nix | ||
| README.org | ||
| Setup.hs | ||
| shell.nix | ||
| xanthous.cabal | ||
Xanthous
Building
$ nix build
Running
$ ./result/bin/xanthous [--help]
Keyboard commands
Keyboard commands are currently undocumented, but can be found in [this file. Movement uses the nethack-esque hjklybnu.
Development
$ nix-shell
# Build (for dev)
[nix-shell:xanthous]$ cabal new-build
# Run tests
[nix-shell:xanthous]$ cabal new-run test
# Run a repl
[nix-shell:xanthous]$ cabal new-repl