diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-07-23 12:59:16 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-07-23 12:59:16 +0000 |
commit | 78367ed8343d077b7975873b4319efb6b749079c (patch) | |
tree | a1a25bae06f15e156d261e82a3bec9857c0f2ac7 | |
parent | c41c70ecb42a727329d3327678ae22919f46f6c7 (diff) | |
download | crawl-ref-78367ed8343d077b7975873b4319efb6b749079c.tar.gz crawl-ref-78367ed8343d077b7975873b4319efb6b749079c.zip |
[1756807] Rock stairs officially renamed to escape hatches.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1913 c06c8d41-db1a-0410-9941-cceddc491573
-rw-r--r-- | crawl-ref/source/acr.cc | 11 | ||||
-rw-r--r-- | crawl-ref/source/dat/descript.txt | 14 | ||||
-rw-r--r-- | crawl-ref/source/dat/float.des | 2 | ||||
-rw-r--r-- | crawl-ref/source/dat/large.des | 2 | ||||
-rw-r--r-- | crawl-ref/source/dat/mini.des | 4 | ||||
-rw-r--r-- | crawl-ref/source/direct.cc | 6 | ||||
-rw-r--r-- | crawl-ref/source/misc.cc | 32 |
7 files changed, 52 insertions, 19 deletions
diff --git a/crawl-ref/source/acr.cc b/crawl-ref/source/acr.cc index cbe9a13471..3bcbd517bc 100644 --- a/crawl-ref/source/acr.cc +++ b/crawl-ref/source/acr.cc @@ -689,8 +689,11 @@ static void handle_wizard_command( void ) get_input_line( specs, sizeof( specs ) ); if (specs[0] != '\0') - grd[you.x_pos][you.y_pos] = - static_cast<dungeon_feature_type>( atoi(specs) ); + { + if (const int feat = atoi(specs)) + grd[you.x_pos][you.y_pos] = + static_cast<dungeon_feature_type>( feat ); + } break; case ')': @@ -702,7 +705,11 @@ static void handle_wizard_command( void ) if (feat == DNGN_UNSEEN) canned_msg(MSG_OK); else + { + mprf(MSGCH_DIAGNOSTICS, "Setting (%d,%d) to %s (%d)", + you.x_pos, you.y_pos, specs, feat); grd(you.pos()) = feat; + } } break; diff --git a/crawl-ref/source/dat/descript.txt b/crawl-ref/source/dat/descript.txt index 7443a3ad98..2e0ff702dd 100644 --- a/crawl-ref/source/dat/descript.txt +++ b/crawl-ref/source/dat/descript.txt @@ -2038,19 +2038,23 @@ Floor %%%% An open door -A plain door. You can close it by standing next to it and pressing 'c'. +A wooden door. You can close it by standing next to it and pressing 'c'. %%%% A closed door -A plain door. To open it, try simply walking into it, or press 'o'. +A wooden door. To open it, try simply walking into it, or press 'o'. %%%% -A rock staircase leading down +An escape hatch in the floor +A spring-loaded one-way escape hatch set in the dungeon floor, +allowing the adventurer beset by adversaries to exchange the perils of +this level for the perils of the next. %%%% -A stone staircase leading down +An escape hatch in the ceiling +A spring-loaded one-way escape hatch set in the ceiling. %%%% -A rock staircase leading up +A stone staircase leading down %%%% A stone staircase leading up diff --git a/crawl-ref/source/dat/float.des b/crawl-ref/source/dat/float.des index be7832281d..4922553783 100644 --- a/crawl-ref/source/dat/float.des +++ b/crawl-ref/source/dat/float.des @@ -254,7 +254,7 @@ SUBST: * = |:5 * . SUBST: T = TU SHUFFLE: xb/cc, ABC : if crawl.coinflip() then -KFEAT: X = rock staircase leading up / rock staircase leading down +KFEAT: X = < / > KITEM: X = any good_item : else SUBST: X=*, B=., C=. diff --git a/crawl-ref/source/dat/large.des b/crawl-ref/source/dat/large.des index e84d2b8295..3261f5b342 100644 --- a/crawl-ref/source/dat/large.des +++ b/crawl-ref/source/dat/large.des @@ -216,7 +216,7 @@ MONS: human simulacrum w:60/elf simulacrum/ogre simulacrum/centaur simulacrum MONS: eye of draining/brain worm/death drake w:5/shadow/shadow dragon w:1 KITEM: A = potion of experience / any good_item KMONS: A = Maud -KFEAT: A = rock staircase leading down +KFEAT: A = > KFEAT: B = | KMONS: B = neqoxec KFEAT: C = b diff --git a/crawl-ref/source/dat/mini.des b/crawl-ref/source/dat/mini.des index 4ace0aeb67..bb0b679b8d 100644 --- a/crawl-ref/source/dat/mini.des +++ b/crawl-ref/source/dat/mini.des @@ -135,8 +135,8 @@ MONS: ice statue MONS: ice devil w:5/blue devil w:5/ice dragon/freezing wraith/nothing w:30 MONS: white imp/ice beast w:30/polar bear/nothing w:50 MONS: white imp/ice beast w:30/polar bear/nothing w:50 -KFEAT: 2 = rock staircase leading down -KFEAT: 4 = rock staircase leading down +KFEAT: 2 = > +KFEAT: 4 = > MAP T..................T ..WWW..........WWW.. diff --git a/crawl-ref/source/direct.cc b/crawl-ref/source/direct.cc index 962bc0f82f..eaee6f37ea 100644 --- a/crawl-ref/source/direct.cc +++ b/crawl-ref/source/direct.cc @@ -1306,13 +1306,13 @@ std::string raw_feature_description(dungeon_feature_type grid, case DNGN_OPEN_DOOR: return ("open door"); case DNGN_ROCK_STAIRS_DOWN: - return ("rock staircase leading down"); + return ("escape hatch in the floor"); + case DNGN_ROCK_STAIRS_UP: + return ("escape hatch in the ceiling"); case DNGN_STONE_STAIRS_DOWN_I: case DNGN_STONE_STAIRS_DOWN_II: case DNGN_STONE_STAIRS_DOWN_III: return ("stone staircase leading down"); - case DNGN_ROCK_STAIRS_UP: - return ("rock staircase leading up"); case DNGN_STONE_STAIRS_UP_I: case DNGN_STONE_STAIRS_UP_II: case DNGN_STONE_STAIRS_UP_III: diff --git a/crawl-ref/source/misc.cc b/crawl-ref/source/misc.cc index 6b07c4fcf6..94bf165bf4 100644 --- a/crawl-ref/source/misc.cc +++ b/crawl-ref/source/misc.cc @@ -757,6 +757,25 @@ void merfolk_start_swimming(void) you.redraw_evasion = true; } +static void exit_stair_message(dungeon_feature_type stair, bool /* going_up */) +{ + if (grid_is_rock_stair(stair)) + mpr("The hatch slams shut behind you."); +} + +static void climb_message(dungeon_feature_type stair, bool going_up) +{ + if (grid_is_rock_stair(stair)) + { + if (going_up) + mpr("A mysterious force pulls you upwards."); + else + mpr("You slide downwards."); + } + else + mpr(going_up? "You climb upwards." : "You climb downwards."); +} + void up_stairs(void) { dungeon_feature_type stair_find = grd[you.x_pos][you.y_pos]; @@ -808,6 +827,9 @@ void up_stairs(void) return; } + // Checks are done, the character is committed to moving between levels. + exit_stair_message(stair_find, true); + int old_level = you.your_level; // Interlevel travel data: @@ -845,7 +867,6 @@ void up_stairs(void) ouch(INSTANT_DEATH, 0, KILLED_BY_LEAVING); } - mpr("Entering..."); you.prev_targ = MHITNOT; you.pet_target = MHITNOT; @@ -885,7 +906,7 @@ void up_stairs(void) mpr("You float upwards... And bob straight up to the ceiling!"); } else - mpr("You climb upwards."); + climb_message(stair_find, true); load(stair_taken, LOAD_ENTER_LEVEL, was_a_labyrinth, old_level, old_where); @@ -1006,6 +1027,9 @@ void down_stairs( int old_level, dungeon_feature_type force_stair ) return; } + // All checks are done, the player is on the move now. + exit_stair_message(stair_find, false); + #ifdef DGL_MILESTONES if (!force_stair) { @@ -1075,8 +1099,6 @@ void down_stairs( int old_level, dungeon_feature_type force_stair ) you.level_type = LEVEL_DUNGEON; } - if (!force_stair) - mpr("Entering..."); you.prev_targ = MHITNOT; you.pet_target = MHITNOT; @@ -1209,7 +1231,7 @@ void down_stairs( int old_level, dungeon_feature_type force_stair ) break; default: - mpr("You climb downwards."); + climb_message(stair_find, false); break; } |