From 26f8d2de7b69e5cc901b293f76dd0ded073ad1b7 Mon Sep 17 00:00:00 2001 From: j-p-e-g Date: Tue, 14 Jul 2009 20:26:05 +0000 Subject: 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 --- crawl-ref/source/directn.cc | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'crawl-ref/source/directn.cc') 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: -- cgit v1.2.3-54-g00ecf