definition order in enum.h.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8201 c06c8d41-db1a-0410-9941-cceddc491573
G7ZXJ4RUQB3U5NL2DEWXMTHRRDT7WTONWKTPOOGWFCE46ZWUVLOQC
243PID7FPL3QF5DFJAY3KDUFEV3CUBZDFSAAFI4OCY5GLBIY5QYAC
6L4EP4ZRWWYLT55PD5KTTJON5J2JB5VV5MWNHF5VPZQZ5BKEYZ4QC
GPEJOT73KMACP33IPAKFR5ROGHCOIP22VXZMQNYTGLEA2OSZUM2AC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
TV3ZC6WOZKSQQJQN26JIVKCHK6UK7WMDBYZDUYRWEAZ4JB4YVNAAC
JNB3PBPBJHDUHH47ZICB25QENPTMLYK7CXC5BXRVWZ3J3ZZPKCUAC
3UKFCWWS5BLFQWZRB5FUA46CE2XGX5VRCEWC3K3XH5RCGQK64N2AC
// Doesn't include Polyphemus (only appears in the Shoals), Murray (Hell),
// or Tiamat (Zot).
static monster_type _choose_unique_by_depth(int step)
{
int ret;
switch (step)
{
case 0: // depth <= 3
ret = random_choose(MONS_TERENCE, MONS_JESSICA, MONS_IJYB,
MONS_SIGMUND, -1);
break;
case 1: // depth <= 7
ret = random_choose(MONS_IJYB, MONS_SIGMUND, MONS_BLORK_THE_ORC,
MONS_EDMUND, -1);
break;
case 2: // depth <= 9
ret = random_choose(MONS_BLORK_THE_ORC, MONS_EDMUND, MONS_PSYCHE,
MONS_EROLCHA, -1);
break;
case 3: // depth <= 13
ret = random_choose(MONS_PSYCHE, MONS_EROLCHA, MONS_DONALD, MONS_URUG,
MONS_MICHAEL, -1);
break;
case 4: // depth <= 16
ret = random_choose(MONS_URUG, MONS_MICHAEL, MONS_JOSEPH, MONS_SNORG,
MONS_ERICA, MONS_JOSEPHINE, MONS_HAROLD,
MONS_NORBERT, MONS_JOZEF, -1);
break;
case 5: // depth <= 19
ret = random_choose(MONS_SNORG, MONS_ERICA, MONS_JOSEPHINE,
MONS_HAROLD, MONS_NORBERT, MONS_JOZEF, MONS_AGNES,
MONS_MAUD, MONS_LOUISE, MONS_FRANCIS, MONS_FRANCES,
-1);
break;
case 6: // depth > 19
default:
ret = random_choose(MONS_LOUISE, MONS_FRANCIS, MONS_FRANCES,
MONS_RUPERT, MONS_WAYNE, MONS_DUANE, MONS_XTAHUA,
MONS_NORRIS, MONS_FREDERICK, MONS_MARGERY,
MONS_BORIS, -1);
}
return static_cast<monster_type>(ret);
}
((lev > 19) ? random_range(MONS_LOUISE, MONS_BORIS) :
(lev > 16) ? random_range(MONS_ERICA, MONS_FRANCES) :
(lev > 13) ? random_range(MONS_URUG, MONS_JOZEF) :
(lev > 9) ? random_range(MONS_PSYCHE, MONS_MICHAEL) :
(lev > 7) ? random_range(MONS_BLORK_THE_ORC, MONS_EROLCHA) :
(lev > 3) ? random_range(MONS_IJYB, MONS_EDMUND) :
random_range(MONS_TERENCE, MONS_SIGMUND));
((lev <= 3) ? _choose_unique_by_depth(0) :
(lev <= 7) ? _choose_unique_by_depth(1) :
(lev <= 9) ? _choose_unique_by_depth(2) :
(lev <= 13) ? _choose_unique_by_depth(3) :
(lev <= 16) ? _choose_unique_by_depth(4) :
(lev <= 19) ? _choose_unique_by_depth(5) :
_choose_unique_by_depth(6));