summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mapmark.h
diff options
context:
space:
mode:
authorJude Brown <bookofjude@users.sourceforge.net>2010-10-07 22:36:56 +1000
committerJude Brown <bookofjude@users.sourceforge.net>2010-10-07 22:39:52 +1000
commit00824734f62dcb254b07bade924c50ca1ece70a1 (patch)
tree08a47ec268a6803a535d707ba6aa3a79b7518207 /crawl-ref/source/mapmark.h
parent0b25078c9617f3091c07f04052a21d43f6accdd0 (diff)
downloadcrawl-ref-00824734f62dcb254b07bade924c50ca1ece70a1.tar.gz
crawl-ref-00824734f62dcb254b07bade924c50ca1ece70a1.zip
Improve Malign Gateway.
Done: * Portal now appears without tentacles, and generates clouds of translocational energy before the tentacle appears. * Portal is no longer a traversible square. This is somewhat hackish but it works. Currently, the only monsters that will enter it will be the actual tentacles themselves; if the player attempts to enter, they will be harmed and blinked away (there should be a prompt before entering). To-do: * Chance of the tentacle being hostile to start. * Portal only generates surrounded by open squares. * Tentacle eventually turns hostile. * Tentacle speed and name (moving from demonic towards "alien"-esque). I'd rather push what has been done now than have to merge any massive future changes as before.
Diffstat (limited to 'crawl-ref/source/mapmark.h')
-rw-r--r--crawl-ref/source/mapmark.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/crawl-ref/source/mapmark.h b/crawl-ref/source/mapmark.h
index 0668cec09a..0b5afc4207 100644
--- a/crawl-ref/source/mapmark.h
+++ b/crawl-ref/source/mapmark.h
@@ -121,6 +121,28 @@ public:
int duration, source, target;
};
+class map_malign_gateway_marker : public map_marker
+{
+public:
+ map_malign_gateway_marker (const coord_def& pos = coord_def(0, 0),
+ int dur = 0, bool ip = false, monster* mon = NULL,
+ god_type gd = GOD_NO_GOD, int pow = 0);
+
+ void write (writer &) const;
+ void read (reader &);
+ map_marker *clone() const;
+ std::string debug_describe() const;
+
+ static map_marker *read(reader &, map_marker_type);
+
+public:
+ int duration;
+ bool is_player;
+ monster* caster;
+ god_type god;
+ int power;
+};
+
// A marker powered by Lua.
class map_lua_marker : public map_marker, public dgn_event_listener
{