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 stackorcabal+GHCfrom https://www.haskell.org/downloads
- Install libtcodin your system (version>= 1.8.2).
- Run stack install --flags tcod-haskell:examplesorcabal sandbox new && cabal install --flags=examples
- Run example tcod-haskell-sample01in root folder of repo (or copyterminal.pngto 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.