diff options
-rw-r--r-- | crawl-ref/docs/arena.txt | 11 | ||||
-rw-r--r-- | crawl-ref/source/tile2.cc | 7 | ||||
-rw-r--r-- | crawl-ref/source/tilepick.cc | 9 | ||||
-rw-r--r-- | crawl-ref/source/tiles.h | 2 | ||||
-rw-r--r-- | crawl-ref/source/tilesdl.cc | 4 |
5 files changed, 26 insertions, 7 deletions
diff --git a/crawl-ref/docs/arena.txt b/crawl-ref/docs/arena.txt index b4339c32a7..901dd03638 100644 --- a/crawl-ref/docs/arena.txt +++ b/crawl-ref/docs/arena.txt @@ -5,7 +5,10 @@ entertainment. It can be invoked on the command line like this: crawl -arena "kobold v goblin" Which will cause one kobold to fight one goblin, with crawl shutting down once -one of them has won. To make them fight for three rounds you can do: +one of them has won. To be considered valid, a monster's name has to fully +match its definition, e.g. "Blork the orc" rather than simply "Blork". + +To make them fight for three rounds you can do: crawl -arena "t:3 kobold v goblin" @@ -22,6 +25,12 @@ will give team A a rat and a cockroach and team B a kobold and a goblin; a victory is declared when all of one team is dead and at lest one member of the other team is still alive. +Some monsters have a band (that is, a group of monsters) that will be +generated with them during normal play. You can use the suffix "band" to +make a monster appear with its band (if one exists). For example: + + crawl -arena "Margery band v Saint Roka band" + You can also make multiple of a single type of monster (note that the singular form of the names are still used): diff --git a/crawl-ref/source/tile2.cc b/crawl-ref/source/tile2.cc index dc6eb07898..a4f5386eff 100644 --- a/crawl-ref/source/tile2.cc +++ b/crawl-ref/source/tile2.cc @@ -29,6 +29,13 @@ REVISION("$Rev$"); #include "tiles.h" #include "transfor.h" +// In a labyrinth, don't display the minimap. +bool player_in_mini_mappable_area() +{ + return (player_in_mappable_area() + && you.level_type != LEVEL_LABYRINTH); +} + void tile_default_flv(level_area_type lev, branch_type br, tile_flavour &flv) { flv.wall = TILE_WALL_NORMAL; diff --git a/crawl-ref/source/tilepick.cc b/crawl-ref/source/tilepick.cc index cb18fe701d..23aa5e9ab3 100644 --- a/crawl-ref/source/tilepick.cc +++ b/crawl-ref/source/tilepick.cc @@ -42,10 +42,13 @@ static inline bool _is_sewers() void TileNewLevel(bool first_time) { tiles.clear_minimap(); - for (int y = 0; y < GYM; y++) - for (int x = 0; x < GXM; x++) - tiles.update_minimap(x, y); + if (player_in_mini_mappable_area()) + { + for (int y = 0; y < GYM; y++) + for (int x = 0; x < GXM; x++) + tiles.update_minimap(x, y); + } if (first_time) tile_init_flavour(); diff --git a/crawl-ref/source/tiles.h b/crawl-ref/source/tiles.h index e926f93930..923a34b96b 100644 --- a/crawl-ref/source/tiles.h +++ b/crawl-ref/source/tiles.h @@ -39,6 +39,8 @@ struct demon_data int wings; }; +bool player_in_mini_mappable_area(); + //*tile1.cc: get data from core part and drives tile drawing codes //**convert in-game data to tile index diff --git a/crawl-ref/source/tilesdl.cc b/crawl-ref/source/tilesdl.cc index 035fa1de0d..a00edd2de6 100644 --- a/crawl-ref/source/tilesdl.cc +++ b/crawl-ref/source/tilesdl.cc @@ -1072,9 +1072,7 @@ void TilesFramework::redraw() glScalef(m_viewsc.x, m_viewsc.y, 1.0f); for (unsigned int i = 0; i < m_layers[m_active_layer].m_regions.size(); i++) - { m_layers[m_active_layer].m_regions[i]->render(); - } // Draw tooltip if (!m_tooltip.empty()) @@ -1091,7 +1089,7 @@ void TilesFramework::redraw() void TilesFramework::update_minimap(int gx, int gy) { - if (!player_in_mappable_area()) + if (!player_in_mini_mappable_area()) return; int object = env.map[gx][gy].object; |