diff options
author | Bardur Arantsson <bardur@scientician.net> | 2012-06-09 16:34:40 +0200 |
---|---|---|
committer | Bardur Arantsson <bardur@scientician.net> | 2012-06-09 16:55:01 +0200 |
commit | 0bd0bab14018806a9fafe8db624323ce4699fe9b (patch) | |
tree | 23c656d8dca1d7d5991b694cf728080769557d5b /src | |
parent | cd9c9db64bff40addbbbf5834f8839e93717cfba (diff) |
Lua: Move "subrace" help to C
Diffstat (limited to 'src')
-rw-r--r-- | src/birth.c | 5 | ||||
-rw-r--r-- | src/externs.h | 1 | ||||
-rw-r--r-- | src/help.c | 41 |
3 files changed, 46 insertions, 1 deletions
diff --git a/src/birth.c b/src/birth.c index 0192abc3..595a8dfa 100644 --- a/src/birth.c +++ b/src/birth.c @@ -2050,7 +2050,10 @@ static bool_ player_birth_aux_ask() while (!(BIT(racem[k]) & rmp_ptr->choice[racem[k] / 32])); break; } - else if (c == '?') exec_lua(format("ingame_help('select_context', 'subrace', '%s')", race_mod_info[racem[sel]].title + rmp_name)); + else if (c == '?') + { + help_subrace(race_mod_info[racem[sel]].title + rmp_name); + } k = (islower(c) ? A2I(c) : -1); if ((k >= 0) && (k < max_racem) && diff --git a/src/externs.h b/src/externs.h index 87489bcc..6be9776b 100644 --- a/src/externs.h +++ b/src/externs.h @@ -619,6 +619,7 @@ extern void initialize_bookable_spells(); /* help.c */ extern void init_hooks_help(); extern void help_race(cptr race); +extern void help_subrace(cptr subrace); /* birth.c */ extern void print_desc_aux(cptr txt, int y, int x); @@ -106,6 +106,42 @@ context_help_type race_table[] = }; /** + * Subrace help files. + */ +context_help_type subrace_table[] = +{ + /* ToME */ + { "Barbarian", "rm_barb.txt", 0 }, + { "Classical", "rm_class.txt", 0 }, + { "Corrupted", "rm_corru.txt", 0 }, + { "Hermit", "rm_herm.txt", 0 }, + { "LostSoul", "rm_lsoul.txt", 0 }, + { "Skeleton", "rm_skel.txt", 0 }, + { "Spectre", "rm_spec.txt", 0 }, + { "Vampire", "rm_vamp.txt", 0 }, + { "Zombie", "rm_zomb.txt", 0 }, + /* Theme */ + { "Red", "rm_red.txt", 0 }, + { "Black", "rm_black.txt", 0 }, + { "Green", "rm_green.txt", 0 }, + { "Blue", "rm_blue.txt", 0 }, + { "White", "rm_white.txt", 0 }, + { "Ethereal", "rm_ether.txt", 0 }, + { "(Narrog)", "rm_narrog.txt", 0 }, + { "(Aewrog)", "rm_aewrog.txt", 0 }, + { "(Hurog)", "rm_hurog.txt", 0 }, + { "(Sarnrog)", "rm_sarnrog.txt", 0 }, + { "(Caborrog)", "rm_cabrog.txt", 0 }, + { "(Draugrog)", "rm_drarog.txt", 0 }, + { "(Lygrog)", "rm_lygrog.txt", 0 }, + { "(Limrog)", "rm_limrog.txt", 0 }, + { "(Rawrog)", "rm_rawrog.txt", 0 }, + { "(Adanrog)", "rm_adanrog.txt", 0 }, + /* End of list */ + { NULL, NULL, 0 }, +}; + +/** * Trigger functions */ static bool_ trigger_void_jumpgate(void *in, void *out) { @@ -505,3 +541,8 @@ void help_race(cptr race) { show_context_help(find_context_help(race_table, race)); } + +void help_subrace(cptr subrace) +{ + show_context_help(find_context_help(subrace_table, subrace)); +} |