diff options
author | Brendan Hickey <brendan@bhickey.net> | 2013-03-02 17:39:09 -0800 |
---|---|---|
committer | Brendan Hickey <brendan@bhickey.net> | 2013-03-02 17:45:20 -0800 |
commit | 2a9ad8e908992dffb255856b15b4afe9c01906c0 (patch) | |
tree | f547eba3e5d9bebc2571ac02f0973854b52a1064 /crawl-ref/source/dgn-proclayouts.h | |
parent | a843345b50b3ee2e58450861978ec8bfc4d7b887 (diff) | |
download | crawl-ref-2a9ad8e908992dffb255856b15b4afe9c01906c0.tar.gz crawl-ref-2a9ad8e908992dffb255856b15b4afe9c01906c0.zip |
Dungeon Levels in the Abyss
Use chunks of real levels to generate abyss levels.
Diffstat (limited to 'crawl-ref/source/dgn-proclayouts.h')
-rw-r--r-- | crawl-ref/source/dgn-proclayouts.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/crawl-ref/source/dgn-proclayouts.h b/crawl-ref/source/dgn-proclayouts.h index 5eddf69d23..7a34e15a9a 100644 --- a/crawl-ref/source/dgn-proclayouts.h +++ b/crawl-ref/source/dgn-proclayouts.h @@ -14,6 +14,9 @@ #include "externs.h" #include "worley.h" +dungeon_feature_type sanitize_feature(dungeon_feature_type feature, + bool strict = false); + class ProceduralSample { public: @@ -35,7 +38,7 @@ class ProceduralSamplePQCompare public: bool operator() (const ProceduralSample &lhs, const ProceduralSample &rhs) { - return lhs.changepoint() > rhs.changepoint(); + return lhs.changepoint() > rhs.changepoint(); } }; @@ -130,4 +133,16 @@ class NewAbyssLayout : public ProceduralLayout private: const uint32_t seed; }; + +class LevelLayout : public ProceduralLayout +{ + public: + LevelLayout(level_id id, uint32_t _seed, const ProceduralLayout &_layout); + ProceduralSample operator()(const coord_def &p, const uint32_t offset = 0) const; + private: + feature_grid grid; + uint32_t seed; + const ProceduralLayout &layout; +}; + #endif /* PROC_LAYOUTS_H */ |