summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crawl-ref/source/mon-cast.cc17
-rw-r--r--crawl-ref/source/spl-data.h13
2 files changed, 30 insertions, 0 deletions
diff --git a/crawl-ref/source/mon-cast.cc b/crawl-ref/source/mon-cast.cc
index 9183a23286..eb2a5e8b8f 100644
--- a/crawl-ref/source/mon-cast.cc
+++ b/crawl-ref/source/mon-cast.cc
@@ -621,6 +621,11 @@ bolt mons_spells( monsters *mons, spell_type spell_cast, int power,
beam.is_beam = true;
break;
+ case SPELL_BLINK_OTHER_CLOSER:
+ beam.flavour = BEAM_BLINK_CLOSER;
+ beam.is_beam = true;
+ break;
+
case SPELL_FIRE_BREATH:
beam.name = "blast of flame";
beam.aux_source = "blast of fiery breath";
@@ -2036,6 +2041,18 @@ void mons_cast(monsters *monster, bolt &pbolt, spell_type spell_cast,
}
break;
}
+ case SPELL_BLINK_OTHER_CLOSER:
+ {
+ // Allow the caster to comment on moving the foe.
+ std::string msg = getSpeakString(monster->name(DESC_PLAIN)
+ + " blink_other_closer");
+ if (!msg.empty() && msg != "__NONE")
+ {
+ mons_speaks_msg(monster, msg, MSGCH_TALK,
+ silenced(you.pos()) || silenced(monster->pos()));
+ }
+ break;
+ }
case SPELL_TOMB_OF_DOROKLOHE:
{
sumcount = 0;
diff --git a/crawl-ref/source/spl-data.h b/crawl-ref/source/spl-data.h
index e8d212591e..cd4fba8797 100644
--- a/crawl-ref/source/spl-data.h
+++ b/crawl-ref/source/spl-data.h
@@ -2239,6 +2239,19 @@
},
{
+ SPELL_BLINK_OTHER_CLOSER, "Blink Other Closer",
+ SPTYP_TRANSLOCATION,
+ SPFLAG_TARGET | SPFLAG_MONSTER,
+ 2,
+ 0,
+ LOS_RADIUS, LOS_RADIUS,
+ 0,
+ NULL,
+ true,
+ false
+},
+
+{
SPELL_SUMMON_MUSHROOMS, "Summon Mushrooms",
SPTYP_SUMMONING,
SPFLAG_MONSTER,