diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-07-14 20:26:05 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-07-14 20:26:05 +0000 |
commit | 26f8d2de7b69e5cc901b293f76dd0ded073ad1b7 (patch) | |
tree | 87209d39e974b90f25cc2da991c7156cf91c8720 /crawl-ref/source/directn.cc | |
parent | 258300c2d7b30f3ccdcd43b804b4ff9055dae917 (diff) | |
download | crawl-ref-26f8d2de7b69e5cc901b293f76dd0ded073ad1b7.tar.gz crawl-ref-26f8d2de7b69e5cc901b293f76dd0ded073ad1b7.zip |
Tweak Shoals algorithm to place the islands a bit more central and away from
the border (so they're not cut off anymore).
Also add a new feature type DNGN_OPEN_SEA that is an impassible feature only
intended for the Shoals border. Will need special handling for confusion, I
guess.
I've also tweaked the level generation, so Shoals vaults don't need to be
connected anymore (the algorithm just adds superfluous floor corridors), but
I still get loads of corridors on the bottom level - frustratingly enough
only inside the map border, and they (usually) don't even contain any stairs
or other features. It's maddening!
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10213 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/directn.cc')
-rw-r--r-- | crawl-ref/source/directn.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/crawl-ref/source/directn.cc b/crawl-ref/source/directn.cc index 666b59ae96..53652e78a5 100644 --- a/crawl-ref/source/directn.cc +++ b/crawl-ref/source/directn.cc @@ -2596,6 +2596,8 @@ static std::string _base_feature_desc(dungeon_feature_type grid, return ("rock wall"); case DNGN_PERMAROCK_WALL: return ("unnaturally hard rock wall"); + case DNGN_OPEN_SEA: + return ("open sea"); case DNGN_CLOSED_DOOR: return ("closed door"); case DNGN_DETECTED_SECRET_DOOR: @@ -2902,6 +2904,16 @@ std::string feature_description(const coord_def& where, bool bloody, return thing_do_grammar(dtype, add_stop, false, desc); } + if (grid == DNGN_OPEN_SEA) + { + switch (dtype) + { + case DESC_CAP_A: dtype = DESC_CAP_THE; break; + case DESC_NOCAP_A: dtype = DESC_NOCAP_THE; break; + default: break; + } + } + switch (grid) { case DNGN_TRAP_MECHANICAL: |