summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/spl-transloc.cc
diff options
context:
space:
mode:
authorShmuale Mark <shm.mark@gmail.com>2014-03-08 19:50:33 -0500
committerShmuale Mark <shm.mark@gmail.com>2014-03-08 20:42:05 -0500
commit15be66f726488cb2783819566f7efceab7069a2e (patch)
tree190b9ea8e40b5905c5aa54e7b9194b6cda6176c3 /crawl-ref/source/spl-transloc.cc
parent428849b03052c4253dbc0b0a2ced2c1bbc12745d (diff)
downloadcrawl-ref-15be66f726488cb2783819566f7efceab7069a2e.tar.gz
crawl-ref-15be66f726488cb2783819566f7efceab7069a2e.zip
Make all abyss teleports shift the Abyss (minmay).
Partly this is to (somewhat) make the Abyss a little easier. Teleports still take longer than orbrun teleports to kick in on average, and in general letting the player know what an action will do is a good thing. But the main reason is that, due to maprot, same-area abyss teleports are a pretty awful interface screw. You are prevented from remembering what monsters were around (this was quite annoying when being marked was more common in the abyss), and though you can see for one second what direction you came from, immediately after the screen refreshes and you can't anymore. Possibly this could lead to improving/removing altogether maprot.
Diffstat (limited to 'crawl-ref/source/spl-transloc.cc')
-rw-r--r--crawl-ref/source/spl-transloc.cc22
1 files changed, 7 insertions, 15 deletions
diff --git a/crawl-ref/source/spl-transloc.cc b/crawl-ref/source/spl-transloc.cc
index bba7433470..307dcf3a60 100644
--- a/crawl-ref/source/spl-transloc.cc
+++ b/crawl-ref/source/spl-transloc.cc
@@ -270,12 +270,6 @@ int blink(int pow, bool high_level_controlled_blink, bool wizard_blink,
mpr("Oops! Maybe something was there already.");
random_blink(false);
}
- else if (player_in_branch(BRANCH_ABYSS) && !wizard_blink)
- {
- abyss_teleport(false);
- if (you.pet_target != MHITYOU)
- you.pet_target = MHITNOT;
- }
else
{
// Leave a purple cloud.
@@ -462,8 +456,8 @@ static void _handle_teleport_update(bool large_change, const coord_def old_pos)
#endif
}
-static bool _teleport_player(bool allow_control, bool new_abyss_area,
- bool wizard_tele, int range)
+static bool _teleport_player(bool allow_control, bool wizard_tele,
+ int range)
{
bool is_controlled = (allow_control && !you.confused()
&& player_control_teleport()
@@ -474,10 +468,9 @@ static bool _teleport_player(bool allow_control, bool new_abyss_area,
if (wizard_tele)
is_controlled = true;
- // Stasis can't block the Abyss from shifting.
if (!wizard_tele
&& (crawl_state.game_is_sprint() || you.no_tele(true, true))
- && !new_abyss_area)
+ && !player_in_branch(BRANCH_ABYSS))
{
canned_msg(MSG_STRANGE_STASIS);
return false;
@@ -495,7 +488,7 @@ static bool _teleport_player(bool allow_control, bool new_abyss_area,
if (player_in_branch(BRANCH_ABYSS) && !wizard_tele)
{
- abyss_teleport(new_abyss_area);
+ abyss_teleport();
if (you.pet_target != MHITYOU)
you.pet_target = MHITNOT;
@@ -774,11 +767,10 @@ bool you_teleport_to(const coord_def where_to, bool move_monsters)
return true;
}
-void you_teleport_now(bool allow_control, bool new_abyss_area,
- bool wizard_tele, int range)
+void you_teleport_now(bool allow_control, bool wizard_tele,
+ int range)
{
- const bool randtele = _teleport_player(allow_control, new_abyss_area,
- wizard_tele, range);
+ const bool randtele = _teleport_player(allow_control, wizard_tele, range);
// Xom is amused by uncontrolled teleports that land you in a
// dangerous place, unless the player is in the Abyss and