diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-08-17 22:20:13 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-08-17 22:20:13 +0000 |
commit | 48b1b54aaf8c7ccc2b016158f58cf34385dd5068 (patch) | |
tree | d415f77648211e196b6f7d8f5075eaf6a1d411db /crawl-ref/source/mapmark.h | |
parent | 78698f0432bba7bdac30f21a17a30c1cf88ae11b (diff) | |
download | crawl-ref-48b1b54aaf8c7ccc2b016158f58cf34385dd5068.tar.gz crawl-ref-48b1b54aaf8c7ccc2b016158f58cf34385dd5068.zip |
Fixed map marker crashes.
Reduced size of Pan demon bands summoned post-Orb (cbus).
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2010 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/mapmark.h')
-rw-r--r-- | crawl-ref/source/mapmark.h | 30 |
1 files changed, 5 insertions, 25 deletions
diff --git a/crawl-ref/source/mapmark.h b/crawl-ref/source/mapmark.h index cc7e2ee5ee..af4c40e536 100644 --- a/crawl-ref/source/mapmark.h +++ b/crawl-ref/source/mapmark.h @@ -9,16 +9,6 @@ ////////////////////////////////////////////////////////////////////////// // Map markers -// Can't change this order without breaking saves. -enum map_marker_type -{ - MAT_FEATURE, // Stock marker. - MAT_LUA_MARKER, - MAT_CORRUPTION_NEXUS, - NUM_MAP_MARKER_TYPES, - MAT_ANY -}; - class map_marker { public: @@ -27,6 +17,7 @@ public: map_marker_type get_type() const { return type; } + virtual map_marker *clone() const = 0; virtual void activate(); virtual void write(tagHeader &) const; virtual void read(tagHeader &); @@ -61,6 +52,7 @@ public: void write(tagHeader &) const; void read(tagHeader &); std::string debug_describe() const; + map_marker *clone() const; static map_marker *read(tagHeader &, map_marker_type); static map_marker *parse(const std::string &s, const std::string &) throw (std::string); @@ -77,7 +69,7 @@ public: void write(tagHeader &) const; void read(tagHeader &); - + map_marker *clone() const; std::string debug_describe() const; static map_marker *read(tagHeader &, map_marker_type); @@ -98,12 +90,13 @@ public: void write(tagHeader &) const; void read(tagHeader &); + map_marker *clone() const; std::string debug_describe() const; std::string feature_description() const; std::string property(const std::string &pname) const; void notify_dgn_event(const dgn_event &e); - + static map_marker *read(tagHeader &, map_marker_type); static map_marker *parse(const std::string &s, const std::string &) throw (std::string); @@ -117,17 +110,4 @@ private: std::string call_str_fn(const char *fn) const; }; -void env_activate_markers(); -void env_add_marker(map_marker *); -void env_remove_marker(map_marker *); -void env_remove_markers_at(const coord_def &c, map_marker_type); -std::vector<map_marker*> env_get_all_markers(map_marker_type = MAT_ANY); -map_marker *env_find_marker(const coord_def &c, map_marker_type); -map_marker *env_find_marker(map_marker_type type); -std::vector<map_marker*> env_get_markers(const coord_def &c); -void env_clear_markers(); -std::string env_property_at(const coord_def &c, map_marker_type, - const std::string &key); -void env_move_markers(const coord_def &from, const coord_def &to); - #endif |