diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2006-12-07 07:51:48 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2006-12-07 07:51:48 +0000 |
commit | b58fbcfafc44bc2810863a3722bee2e6a8f7d22d (patch) | |
tree | 22a1199ad8ca845bfad04590d9dc5e9891ae8960 /crawl-ref/source/mapdef.h | |
parent | cf61c793d3d3783b2b5a39a8cf01b857806411b2 (diff) | |
download | crawl-ref-b58fbcfafc44bc2810863a3722bee2e6a8f7d22d.tar.gz crawl-ref-b58fbcfafc44bc2810863a3722bee2e6a8f7d22d.zip |
*Breaks save compatibility* - changed monster flags to long, added "god" field for future fun.
dungeon.cc cleanup and rework to support floating vaults.
Updated levcomp to support the float orientation.
coord_def now has a constructor.
USE_RIVERS and USE_NEW_UNRANDS are no longer conditional.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@585 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/mapdef.h')
-rw-r--r-- | crawl-ref/source/mapdef.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/crawl-ref/source/mapdef.h b/crawl-ref/source/mapdef.h index 9fc686ea94..1bb4650e1d 100644 --- a/crawl-ref/source/mapdef.h +++ b/crawl-ref/source/mapdef.h @@ -13,6 +13,7 @@ #include <vector> #include "enum.h" +#include "externs.h" enum map_flags { MAPF_PANDEMONIUM_VAULT = 0x01, // A pandemonium minivault. @@ -50,6 +51,11 @@ public: int width() const; int height() const; + int glyph(int x, int y) const; + bool is_solid(int gly) const; + + bool solid_borders(map_section_type border); + void resolve(const std::string &fillins); // Make all lines the same length. @@ -66,10 +72,13 @@ public: private: void resolve(std::string &s, const std::string &fill); + void check_borders(); private: std::vector<std::string> lines; int map_width; + bool solid_north, solid_east, solid_south, solid_west; + bool solid_checked; }; class mons_list { @@ -108,7 +117,6 @@ public: public: void init(); - void hmirror(); void vmirror(); void rotate(bool clockwise); @@ -116,6 +124,12 @@ public: void resolve(); void fixup(); + bool can_dock(map_section_type) const; + coord_def dock_pos(map_section_type) const; + coord_def float_dock(); + coord_def float_place(); + coord_def float_random_place() const; + bool is_minivault() const; bool has_tag(const std::string &tag) const; }; |