git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2132 c06c8d41-db1a-0410-9941-cceddc491573
OVM7ZULJJ6Q23AQ747AWBGISGDQYCGF2NT5YTXKW633I56WIYZPQC UWMN4HLG6YA2YFQEVIVMDISD6APKEPIZXMMPMNUYCBQDSAUYSXPQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC XHNJ2W4AQHIF32P2ENIMMDLWAIFWP442KJIZC6RKS4HBJNZIHHBAC XHFG7QUF4UF7OYU7KWT2EB6XITI2BZDHH2D2FD7YP33C3M4GRBKQC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC P2ZCF3BBG523ZEOD6XQA4X5YEHBTWH3IM33YVHXP2SQ5POXZIH4QC NJ66DHOK2SWT6MWW5FIWHKZE3HHMFNCBBUYLDJGZGCH3B752OBYQC LABXKXWWQY2V4FUDLGVTDYHXINAP6KRHZDHBQ2FE22FFOEIZPL6QC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC KFWZ6CK4MZRLZN7YCZV32OAJBB5XVEJQR6SR474UQX2MJGXI4F7AC 5UVDIVD4NSXA52U4QMQIVST3GSZJ2A2YZK3RUEXKPM43YVQ7LI5AC }// Determines if a species is valid. If 'display' is true, returns if// the species is displayable in the new game screen - this is// primarily used to suppress the display of the draconian variants.static bool is_species_valid_choice(species_type species, bool display = true){return (species&& species != NUM_SPECIES&& species != SP_UNKNOWN&& !((display?(species > SP_RED_DRACONIAN&& species <= SP_BASE_DRACONIAN): (species >= SP_UNK0_DRACONIAN&& species <= SP_BASE_DRACONIAN))|| species == SP_ELF|| species == SP_HILL_DWARF));}static species_type random_species(){species_type sp = SP_UNKNOWN;dosp = static_cast<species_type>( random2(NUM_SPECIES) );while (!is_species_valid_choice(sp));return (sp);
if ( keyn < 'a' || keyn > 'y' )return SP_UNKNOWN;const int offset = keyn - 'a';
const int offset = letter_to_index(keyn);if (index < 0)return (SP_UNKNOWN);
keyn = 'a' + random2(26);while (you.char_class != JOB_UNKNOWN &&!class_allowed(letter_to_species(keyn), you.char_class));
keyn = species_to_letter(random_species());while (!is_species_valid_choice(letter_to_species(keyn), false)|| (you.char_class != JOB_UNKNOWN &&!class_allowed(letter_to_species(keyn), you.char_class)));