starting book types.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7424 c06c8d41-db1a-0410-9941-cceddc491573
QWIGHBYDCRD4VSUAY4GAPS66VM2JGMYMLPHWK6A6BCVPUXU7W5WQC 6C6NQCTGRI7CG4OURJ5KFHV5C6LI7AD36GPIECL7KY2IWREYDQXAC ES6J64POV7ONJRA4GVMPMVS7JKZZEXHE64BQAOOASMJDUPM7OKWAC CNKDOV5ALP5J6ZFDZW2UULUXDNTIOT6E3OIICXL22TSEQU7MQLEQC C2PRXJYHDRF2642VDAUY76HJKCPQFGWDI6AM3SMCMYCHGWYDQXQQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC 3FRPKD2JSN7RA2HKWAO3XV7MMKCIAMWIMU6JNJ452VZEUSXM6PWQC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC 77H4BWWPPGLM3PLZH4QTAJRXIZTSDVNCOKZE223I437FN2UJ34RQC JDM5R3HYGXKQKZWY35QZ2KOB24TFZ3FW2PCNXCRCMWG72AZC5ZXQC JPGW2YFZDRPAWPG4VAKOOB5SCJA2QSSLR5JJP7ULRBX3LLGI7PUAC }static startup_book_type _book_to_start(int book){switch (book){case BOOK_MINOR_MAGIC_I:case BOOK_CONJURATIONS_I:return (SBT_FIRE);case BOOK_MINOR_MAGIC_II:case BOOK_CONJURATIONS_II:return (SBT_COLD);case BOOK_MINOR_MAGIC_III:return (SBT_SUMM);default:return (SBT_NO_SELECTION);}}static int _start_to_book(int firstbook, int booktype){switch (firstbook){case BOOK_MINOR_MAGIC_I:switch (booktype){case SBT_FIRE:return (BOOK_MINOR_MAGIC_I);case SBT_COLD:return (BOOK_MINOR_MAGIC_II);case SBT_SUMM:return (BOOK_MINOR_MAGIC_III);default:return (NUM_BOOKS);}case BOOK_CONJURATIONS_I:switch (booktype){case SBT_FIRE:return (BOOK_CONJURATIONS_I);case SBT_COLD:return (BOOK_CONJURATIONS_II);default:return (NUM_BOOKS);}default:return (NUM_BOOKS);}
// book 0 = fire (CONJ_I, MINOR_MAGIC_I), 1 = ice (CONJ_II, MINOR_MAGIC_II),// 2 = summoning (MINOR_MAGIC_III)static char_choice_restriction _book_restriction(int booktype,bool summon_too = false)
static char_choice_restriction _book_restriction(startup_book_type booktype)
book.sub_type = firstbook + Options.book - 1;ng_book = Options.book;return (true);
const int opt_book = _start_to_book(firstbook, Options.book);if (opt_book != NUM_BOOKS){book.sub_type = opt_book;ng_book = Options.book;return (true);}
if (Options.prev_book > numbooks && Options.prev_book != SBT_RANDOM)Options.prev_book = SBT_NO_SELECTION;
if (Options.prev_book){const int opt_prev_book = _start_to_book(firstbook, Options.prev_book);if (opt_prev_book == NUM_BOOKS && Options.prev_book != SBT_RANDOM)Options.prev_book = SBT_NO_SELECTION;}