summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/travel.h
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-07-06 10:42:29 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-07-06 10:42:29 +0000
commitbeafe98a63d782fccf7324bc48a5f5394b46b591 (patch)
tree16fc10f0be2ac1f18665257799def758170e8da5 /crawl-ref/source/travel.h
parent862f907158311aa239b0a82fa4abb4a4e398861d (diff)
downloadcrawl-ref-beafe98a63d782fccf7324bc48a5f5394b46b591.tar.gz
crawl-ref-beafe98a63d782fccf7324bc48a5f5394b46b591.zip
[1748837] Merge identical features when reporting explore discoveries,
distinguish between stairs and portals. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1770 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/travel.h')
-rw-r--r--crawl-ref/source/travel.h27
1 files changed, 17 insertions, 10 deletions
diff --git a/crawl-ref/source/travel.h b/crawl-ref/source/travel.h
index a5a964ef76..522bec1554 100644
--- a/crawl-ref/source/travel.h
+++ b/crawl-ref/source/travel.h
@@ -32,9 +32,9 @@ void clear_excludes();
unsigned char is_waypoint(int x, int y);
void update_excludes();
bool is_exclude_root(const coord_def &p);
-bool is_stair(unsigned gridc);
-bool is_travelable_stair(unsigned gridc);
-command_type stair_direction(int stair_feat);
+bool is_stair(dungeon_feature_type gridc);
+bool is_travelable_stair(dungeon_feature_type gridc);
+command_type stair_direction(dungeon_feature_type stair_feat);
command_type direction_to_command( char x, char y );
bool is_resting( void );
bool can_travel_interlevel();
@@ -298,13 +298,6 @@ public:
bool prompt_stop() const;
private:
- template <class C> void say_any(const C &coll, const char *stub) const;
- template <class citer> bool has_duplicates(citer, citer) const;
-
- std::string cleaned_feature_description(dungeon_feature_type feature) const;
- void add_item(const item_def &item);
-
-private:
template <class Z> struct named_thing {
std::string name;
Z thing;
@@ -322,8 +315,22 @@ private:
const LevelStashes *current_level;
std::vector< named_thing<item_def> > items;
std::vector< named_thing<int> > stairs;
+ std::vector< named_thing<int> > portals;
std::vector< named_thing<int> > shops;
std::vector< named_thing<int> > altars;
+
+private:
+ template <class C> void say_any(const C &coll, const char *stub) const;
+ template <class citer> bool has_duplicates(citer, citer) const;
+
+ std::string cleaned_feature_description(dungeon_feature_type feature) const;
+ void add_item(const item_def &item);
+ void add_stair(const named_thing<int> &stair);
+ std::vector<std::string> apply_quantities(
+ const std::vector< named_thing<int> > &v) const;
+ bool merge_feature(
+ std::vector< named_thing<int> > &v,
+ const named_thing<int> &feat) const;
};
struct stair_info