Description
Bindings to libtcod roguelike engine.
Description
Haskell bindings for popular library for making roguelike games
README.md
tcod-haskell
These are midlevel bindings for libtcod.
Compile
Needed system libraries:
autoconf
make
gcc
gcc-c++
alsa-lib-devel
audiofile-devel
mesa-libGL-devel
mesa-libGLU-devel
mesa-libEGL-devel
mesa-libGLES-devel
libXext-devel
libX11-devel
libXi-devel
libXrandr-devel
libXrender-devel
dbus-devel
libXScrnSaver-devel
libusb-devel
pulseaudio-libs-devel
libXinerama-devel
libXcursor-devel
systemd-devel
SDL2-devel
Steps:
- Install
stack
orcabal
+GHC
from https://www.haskell.org/downloads - Install
libtcod
in your system (version>= 1.8.2
). - Run
stack install --flags tcod-haskell:examples
orcabal sandbox new && cabal install --flags=examples
- Run example
tcod-haskell-sample01
in root folder of repo (or copyterminal.png
to execution directory).
Nix pipeline
Steps:
- Install Nix
- Run
nix-build
- For interactive shell
nis-shell
- Run example in shell
cabal new-run --flag examples tcod-haskell-sample01
Roadmap
Binded headers:
- [x] bresenham.h
- [x] bsp.h
- [x] color_types.h
- [x] color.h
- [x] console_types.h
- [x] console.h
- [x] fov_types.h
- [x] fov.h
- [x] heightmap.h
- [x] image.h
- [ ] lex.h - not binding as useless.
- [ ] libtcod_int.h - not binding as useless.
- [ ] libtcod_portability.h - not binding as useless.
- [ ] libtcod_utility.h - not binding as useless.
- [x] libtcod_version.h
- [ ] libtcod.h - not binding as useless.
- [x] list.h
- [x] mersenne_types.h
- [x] mersenne.h
- [x] mouse_types.h
- [x] mouse.h
- [x] namegen.h
- [x] noise_defaults.h
- [x] noise.h
- [x] path.h
- [ ] parser.h - not binding as useless.
- [x] sys.h
- [x] tree.h
- [ ] textfield.h - TODO
- [ ] wrappers.h - not binding as useless.
- [ ] zip.h - TODO
- [ ] gui/*.h - TODO.