class.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8630 c06c8d41-db1a-0410-9941-cceddc491573
WUCXHWMF2FL5KCC6E6KNKMYL2NBXXC3WVRY2AUPWSBAPWJFGS34QC UN7NUWN47XRMCYGMWTTOUSLYRASZOFZ5VHEWWCKVVX6WXPE35FCAC JLBRBH4ACMNFDZSIQYLMEFYCQJMUF4AOMJ2JZEZTFNTQRLRT2WTAC YOOCDUQ654NJGF7MXX3NOSZRKRA6TCBLG22PLWZJS7CNVAY3WRFQC JJULXW764V5C2HJKZNWQAEWB6QM5YZADD7ZCE35LYTBFEM6PMYCAC YATODO2EN3AW7IXW5PL25HHK34YHF6Y32QBMOUZXEATZZ4YQQWZQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC UKYGZDI6PYZPXDACCQGVPHANUP5ADCSNROOZIE7LYIZQWSNFHJZAC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC QHABWX5UYQAREZC4B6JGSRXSUH6DQLRD7WB4YGV4HHUHMTXY3ERAC QWIGHBYDCRD4VSUAY4GAPS66VM2JGMYMLPHWK6A6BCVPUXU7W5WQC WMFU65IAJ3LX2YSFXXRS7ZFNDCZYQC3ZQ3QDHHK3DU3UMLJMAP4QC RUGNJUKFHD36CQCJO4XODEUS5P6XRI5CGEU5JJA6FYPSJ5YRAJGQC HHTFZV7UCVSE332T2FMAS2UHWSP6OZ2PSLEJ7D47QTSBTFTUFTNAC 74LQ7JXVLAFSHLI7LCBKFX47CNTYSKGUQSXNX5FCIUIGCC2JTR3QC O6ZMFKDI3XO2SWPNEYHIPYFDWJR4TVDP5BAATK6LVCVETQID6E7AC VIHJ3Z75JN7BXWNOPWV3CWQZEA7K5DK36EKHCYMZC7SOSJYH2XHQC CYAVI4PYWMMKTPYT5N2B3MI4OSHZFLPKOZFSLFJUXRYAACYXWW3AC 3KAINFIXO7WNWGUGZB43EUNFRS2ZPBLQZDTY456QACMRHYIJ7WDAC case WAND_MAGIC_DARTS:return (SWT_MAGIC_DARTS);case WAND_FROST:return (SWT_FROST);case WAND_FLAME:return (SWT_FLAME);default:return (SWT_NO_SELECTION);}}else{switch (wand){case STAFF_STRIKING:return (SWT_STRIKING);default:return (SWT_NO_SELECTION);}}}static int _start_to_wand(int wandtype, bool& is_rod){is_rod = false;switch (wandtype){case SWT_ENSLAVEMENT:return (WAND_ENSLAVEMENT);case SWT_CONFUSION:return (WAND_CONFUSION);case SWT_MAGIC_DARTS:return (WAND_MAGIC_DARTS);case SWT_FROST:return (WAND_FROST);case SWT_FLAME:return (WAND_FLAME);case SWT_STRIKING:is_rod = true;return (STAFF_STRIKING);default:return (-1);}}
if (!Options.random_pick)
int wandtype;bool is_rod;if (Options.wand){if (_start_to_wand(Options.wand, is_rod) != -1){keyin = 'a' + Options.wand;ng_wand = Options.wand;goto wand_done;}}if (Options.prev_wand){if (_start_to_wand(Options.prev_wand, is_rod) == -1&& Options.prev_wand != SWT_RANDOM){Options.prev_wand = SWT_NO_SELECTION;}}if (!Options.random_pick && Options.wand != SWT_RANDOM)
if (prevmatch || Options.prev_wand == SWT_RANDOM){cprintf("; Enter - %s",Options.prev_wand == SWT_ENSLAVEMENT ? "Enslavement" :Options.prev_wand == SWT_CONFUSION ? "Confusion" :Options.prev_wand == SWT_MAGIC_DARTS ? "Magic Darts" :Options.prev_wand == SWT_FROST ? "Frost" :Options.prev_wand == SWT_FLAME ? "Flame" :Options.prev_wand == SWT_STRIKING ? "Striking" :Options.prev_wand == SWT_RANDOM ? "Random": "Buggy Tool");}
if (Options.prev_wand != SWT_NO_SELECTION){if (Options.prev_wand == SWT_RANDOM)keyin = '*';else{for (int i = 0; i < num_choices; ++i){if (i == num_choices - 1){wandtype = you.inv[2].sub_type;is_rod = true;}else{wandtype = startwand[i];is_rod = false;}if (Options.prev_wand ==_wand_to_start(wandtype, is_rod)){keyin = 'a' + i;}}}}
}static int _str_to_wand( const std::string& str ){if (str == "enslavement")return (SWT_ENSLAVEMENT);if (str == "confusion")return (SWT_CONFUSION);if (str == "magic darts" || str == "magicdarts")return (SWT_MAGIC_DARTS);if (str == "frost" || str == "cold" || str == "ice")return (SWT_FROST);if (str == "flame" || str == "fire")return (SWT_FLAME);if (str == "striking")return (SWT_STRIKING);if (str == "random")return (SWT_RANDOM);return (SWT_NO_SELECTION);
static std::string _wand_to_str( int weapon ){switch (weapon){case SWT_ENSLAVEMENT:return "enslavement";case SWT_CONFUSION:return "confusion";case SWT_MAGIC_DARTS:return "magic darts";case SWT_FROST:return "frost";case SWT_FLAME:return "flame";case SWT_STRIKING:return "striking";case SWT_RANDOM:default:return "random";}}