diff options
Diffstat (limited to 'crawl-ref/source/spells3.cc')
-rw-r--r-- | crawl-ref/source/spells3.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/crawl-ref/source/spells3.cc b/crawl-ref/source/spells3.cc index df14c46325..e9ad01d96a 100644 --- a/crawl-ref/source/spells3.cc +++ b/crawl-ref/source/spells3.cc @@ -1390,8 +1390,11 @@ static bool _teleport_player( bool allow_control, bool new_abyss_area ) you.moveto(pos); + // Merfolk should be able to control-tele into deep water. if (grd(you.pos()) != DNGN_FLOOR && grd(you.pos()) != DNGN_SHALLOW_WATER + && (you.species != SP_MERFOLK + || grd(you.pos()) != DNGN_DEEP_WATER) || monster_at(you.pos()) || env.cgrid(you.pos()) != EMPTY_CLOUD) { @@ -1444,6 +1447,8 @@ static bool _teleport_player( bool allow_control, bool new_abyss_area ) } while (grd(newpos) != DNGN_FLOOR && grd(newpos) != DNGN_SHALLOW_WATER + && (you.species != SP_MERFOLK + || grd(you.pos()) != DNGN_DEEP_WATER) || monster_at(newpos) || env.cgrid(newpos) != EMPTY_CLOUD || need_distance_check && (newpos - centre).abs() < 34*34); |