diff options
author | Neil Moore <neil@s-z.org> | 2012-01-04 03:29:35 -0500 |
---|---|---|
committer | Neil Moore <neil@s-z.org> | 2012-01-04 06:18:53 -0500 |
commit | b8177dac2f678e0bec2ba465f7888e35a2f20bee (patch) | |
tree | 1e450ca5d978960c28ecf7416ef0f8461ad864f5 /crawl-ref/source/travel.h | |
parent | ee18ef1544d413131e1de559f26f2ede77a8b497 (diff) | |
download | crawl-ref-b8177dac2f678e0bec2ba465f7888e35a2f20bee.tar.gz crawl-ref-b8177dac2f678e0bec2ba465f7888e35a2f20bee.zip |
Ignore player swimming etc for connectivity checks.
The dungeon should not arrange itself to suit the player's abilities.
Besides this general philosophical objection, there are a few actual
bugs caused by this behaviour:
* Entering a vaults level in bat form (which cannot open doors)
causes a level generation failure.
* travel_avoid_terrain = shallow_water can cause vaults to be vetoed.
* Permanent flight or levitation could allow item shifting to push
an item (even a critical item) into lava or deep water while trying
to save it.
Fixes #4722.
Diffstat (limited to 'crawl-ref/source/travel.h')
-rw-r--r-- | crawl-ref/source/travel.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crawl-ref/source/travel.h b/crawl-ref/source/travel.h index 0bbdfa505b..5b7a175139 100644 --- a/crawl-ref/source/travel.h +++ b/crawl-ref/source/travel.h @@ -50,13 +50,12 @@ enum run_mode_type RMODE_CONTINUE, RMODE_START, RMODE_REST_DURATION = 100, + RMODE_CONNECTIVITY, // Pathfinding connectivity check, not running. }; /* *********************************************************************** * Initialises the travel subsystem. */ -void initialise_travel(); -void init_travel_terrain_check(bool check_race_equip = true); void stop_running(void); void travel_init_load_level(); void travel_init_new_level(); @@ -65,6 +64,7 @@ uint8_t is_waypoint(const coord_def &p); command_type direction_to_command(int x, int y); bool is_resting(void); void explore_pickup_event(int did_pickup, int tried_pickup); +bool feat_is_traversable_now(dungeon_feature_type feat); bool feat_is_traversable(dungeon_feature_type feat); bool is_unknown_stair(const coord_def &p); |