summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/menu.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-09-19 17:58:35 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-09-19 17:58:35 +0000
commitbb7663ad4d03b1e36d1cbc28d797a19dfe39bbd0 (patch)
treeada9fcc62888bbbf5fcbc8491e28b2d90dbf73de /crawl-ref/source/menu.cc
parentae6c83ec9f0273d13ad57f1382528d7715189a2b (diff)
downloadcrawl-ref-bb7663ad4d03b1e36d1cbc28d797a19dfe39bbd0.tar.gz
crawl-ref-bb7663ad4d03b1e36d1cbc28d797a19dfe39bbd0.zip
Highlighting species in aptitudes list, and added the
"." command to help screen. I've added some "\n" to make it look nice (on Windows) but it's looking differently on Linux. *shrugs* git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2147 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/menu.cc')
-rw-r--r--crawl-ref/source/menu.cc32
1 files changed, 32 insertions, 0 deletions
diff --git a/crawl-ref/source/menu.cc b/crawl-ref/source/menu.cc
index 660786404e..7936be1bb1 100644
--- a/crawl-ref/source/menu.cc
+++ b/crawl-ref/source/menu.cc
@@ -11,6 +11,7 @@
#include "menu.h"
#include "macro.h"
#include "message.h"
+#include "player.h"
#include "tutorial.h"
#include "view.h"
#include "initfile.h"
@@ -548,11 +549,42 @@ void Menu::update_title()
gotoxy(x, y);
}
+// to highlight species in aptitudes list ('?%')
+static std::string get_species_key()
+{
+ if (player_genus(GENPC_DRACONIAN) && you.experience_level < 7)
+ return "";
+
+ std::string result = "";
+ switch (you.species)
+ {
+ case SP_RED_DRACONIAN: result = "Red"; break;
+ case SP_WHITE_DRACONIAN: result = "White"; break;
+ case SP_GREEN_DRACONIAN: result = "Green"; break;
+ case SP_GOLDEN_DRACONIAN: result = "Yellow"; break;
+ case SP_GREY_DRACONIAN: result = "Grey"; break;
+ case SP_BLACK_DRACONIAN: result = "Black"; break;
+ case SP_PURPLE_DRACONIAN: result = "Purple"; break;
+ case SP_MOTTLED_DRACONIAN: result = "Mottled"; break;
+ case SP_PALE_DRACONIAN: result = "Pale"; break;
+ default:
+ result = species_name(you.species, 1);
+ }
+ result += " ";
+ return (result);
+}
+
int Menu::item_colour(int, const MenuEntry *entry) const
{
int icol = -1;
if (highlighter)
icol = highlighter->entry_colour(entry);
+ else
+ {
+ text_pattern tp(get_species_key());
+ if (!tp.empty() && tp.matches(entry->text))
+ icol = WHITE;
+ }
return (icol == -1? entry->colour : icol);
}