From 070e8e31875e8f43b5cd14d2385111f3b38cb4ee Mon Sep 17 00:00:00 2001 From: zelgadis Date: Thu, 29 May 2008 04:25:29 +0000 Subject: Fire TUT_SEEN_TRAP when a trap is detected, in addition to when a trap is triggered. Give info on avoid mechanical and natural traps by leviating or flying, and that natural and magical traps can't be disarmed. Give hint resting on up-stairs to make quick escape from monsters, and note that monsters can't follow up up unless they're right next to you. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5322 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/tutorial.cc | 50 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 40 insertions(+), 10 deletions(-) (limited to 'crawl-ref/source/tutorial.cc') diff --git a/crawl-ref/source/tutorial.cc b/crawl-ref/source/tutorial.cc index d0cfaa655e..682c2b9d7c 100644 --- a/crawl-ref/source/tutorial.cc +++ b/crawl-ref/source/tutorial.cc @@ -1911,9 +1911,13 @@ void learned_something_new(tutorial_event_type seen_what, int x, int y) break; case TUT_SEEN_TRAP: - text << "Oops... you just triggered a trap. An unwary adventurer " - "will occasionally stumble into one of these nasty " - "constructions"; + if (x == you.x_pos && y == you.y_pos) + text << "Oops... you just triggered a trap. "; + else + text << "You just discovered a trap. "; + + text << "An unwary adventurer will occasionally stumble into one " + "of these nasty constructions"; #ifndef USE_TILE object = env.show[ex][ey]; colour = env.show_col[ex][ey]; @@ -2294,11 +2298,22 @@ void learned_something_new(tutorial_event_type seen_what, int x, int y) "another level or through secret doors. To find the " "latter, search the adjacent squares of walls for one " "turn with s or ., or for 100 turns with " - "5 or Shift-numpad 5" + "5 or Shift-numpad 5" #ifdef USE_TILE ", or by clicking on the stat area" #endif - "."; + ".\n\n" + + "When resting up on the next (deeper) level it's wise " + "to retreat to an up staircase or hatch so you can " + "retreat to the previous level if a monster wanders " + "across you. Monsters can only follow you up if they're " + "standing right next to you, so if they're still at least " + "two squares away you can flee and safely rest on the " + "the previous level. They'll still be there when you " + "go back down, though, so you'd want to go back down a " + "different set of stairs so they can't get the jump on " + "you when you return."; } break; @@ -3304,14 +3319,25 @@ void tutorial_describe_feature(dungeon_feature_type feat) "standing next to it and then pressing Ctrl " "and the direction of the trap. Note that this usually " "causes the trap to go off, so it can be quite a " - "dangerous task."; + "dangerous task.\n\n" + + "You can safely pass over a mechanical trap if " + "you're flying or leviating."; + } + else + { + ostr << "Magical traps can't be disarmed, and unlike " + "mechanical traps you can't avoid tripping them " + "by levitating or flying over them."; } Options.tutorial_events[TUT_SEEN_TRAP] = 0; break; case DNGN_TRAP_NATURAL: // only shafts for now ostr << "The dungeon contains a number of natural obstacles such " - "as shafts, which lead one or two levels down."; + "as shafts, which lead one to three levels down. They " + "can't be disarmed, but you can safely pass over them " + "if you're levitating or flying."; Options.tutorial_events[TUT_SEEN_TRAP] = 0; break; @@ -3340,9 +3366,13 @@ void tutorial_describe_feature(dungeon_feature_type feat) } else { - ostr << "You can enter the previous (shallower) level by following " - "these up (<<). To get back to this level " - "again, press > while standing on the " + ostr << "You can enter the previous (shallower) level by " + "following these up (<<). This is ideal for " + "retreating or fidning a safe resting spot, since the " + "previous level will have less monsters and monsters " + "on this level can't follow you up unless they're " + "standing right next to you. To get back to this " + "level again, press > while standing on the " "downstairs."; #ifdef USE_TILE ostr << " In tiles, you can perform either action simply by " -- cgit v1.2.3-54-g00ecf