about summary refs log tree commit diff
path: root/src/Xanthous/Random.hs
AgeCommit message (Collapse)AuthorFilesLines
2019-12-30 Add dungeon level generationGriffin Smith1-7/+16
Add a dungeon level generator, which: 1. generates an infinite sequence of rectangular rooms within the dimensions of the level 2. removes any duplicates from that sequence 3. Generates a graph from the delaunay triangulation of the centerpoints of those rooms 4. Generates the minimum-spanning-tree of that delaunay triangulation, with weights given by line length in points 5. Adds back a subset (default 10-15%) of edges from the delaunay triangulation to the graph 6. Uses the resulting graph to draw corridors between the rooms, using a random point on the near edge of each room to pick the points of the corridors
2019-09-28 Tweak gormlak movement slightlyGriffin Smith1-4/+43
- Don't let gormlaks run into things like walls or each other - Add a small element of randomness to gormlaks' motion - Increase gormlaks' vision by a large amount
2019-09-02 Link up messages to the overall gameGriffin Smith1-1/+0
Add a "say" function for saying messages within an app monad to the user, and link everything up to display them and track their history
2019-09-01 Implement messagesGriffin Smith1-0/+40
Implement messages almost the same as in the Rust version, only with YAML instead of TOML this time, and a regular old mustache template instead of something handrolled. Besides that, pretty much everything here is the same.