No description
84f32efad4
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