[1824221] don't give Yred-worshipping demonspawn the "raise dead" mutation [1829258] remove wrongly hardcoded exp-draining resistance for undead [1829691] typo fixes [1830030] clean up random god servant handling [1829890] fix divine retribution messages, generalize berserker summoning
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2877 c06c8d41-db1a-0410-9941-cceddc491573
CA6ZG6P2CE5EPAOQSB3P7NBDKTNFFHQP4CPOUFZL32ON6N32GSSQC
TUK5T3O6YOMKR6SD37666MMV4OHXQ7D76JJ4DNVP5AXWZ2VQ2DXAC
3MAPXTL5GAQ6373CUUVPBARIRHBRSISAF3BO2WBEROT2KUAXWLGAC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
U3KGUJJQWQORJIIFH3ADVNIEEX5HOX6KEOXO7DJSL7L3Z6GG3PAQC
TS7X6ZTTQRB2I53VV4LXZPXZWM3DIKYI3T5PPHZANSEW4Q7QZBOAC
7BQVRR4GR2WNIGOE7D6WGVSFLMW5B6HPMJIZPZBPTSM6H57XXH4AC
RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC
EI5XQIKW3OBVTDVT2A4Q535I5FOVEKARLFISM457IHGAK7TVOMVAC
SWOYPTHJAWFEDBMB3ROT33VQZIXGZD5UOXEV456DDUENW2HGA66QC
EGV2HM7SD7UQSWJGLR65NQJTUBAJ7WHLM67FMH4UFP7JRSFKREPAC
thing_called = ((temp_rand > 66) ? MONS_WRAITH : // 33%
(temp_rand > 52) ? MONS_WIGHT : // 12%
(temp_rand > 40) ? MONS_SPECTRAL_WARRIOR : // 16%
(temp_rand > 31) ? MONS_ROTTING_HULK : // 9%
(temp_rand > 23) ? MONS_SKELETAL_WARRIOR : // 8%
(temp_rand > 16) ? MONS_VAMPIRE : // 7%
(temp_rand > 10) ? MONS_GHOUL : // 6%
(temp_rand > 4) ? MONS_MUMMY // 6%
: MONS_FLAYED_GHOST); // 5%
switch (god)
{
case GOD_YREDELEMNUL:
// undead
thing_called = ((temp_rand > 66) ? MONS_WRAITH : // 33%
(temp_rand > 52) ? MONS_WIGHT : // 12%
(temp_rand > 40) ? MONS_SPECTRAL_WARRIOR : // 16%
(temp_rand > 31) ? MONS_ROTTING_HULK : // 9%
(temp_rand > 23) ? MONS_SKELETAL_WARRIOR : // 8%
(temp_rand > 16) ? MONS_VAMPIRE : // 7%
(temp_rand > 10) ? MONS_GHOUL : // 6%
(temp_rand > 4) ? MONS_MUMMY // 6%
: MONS_FLAYED_GHOST); // 5%
break;
case GOD_OKAWARU:
// warriors
thing_called = ((temp_rand > 84) ? MONS_ORC_WARRIOR :
(temp_rand > 69) ? MONS_ORC_KNIGHT :
(temp_rand > 59) ? MONS_NAGA_WARRIOR :
(temp_rand > 49) ? MONS_CENTAUR_WARRIOR :
(temp_rand > 39) ? MONS_STONE_GIANT :
(temp_rand > 29) ? MONS_FIRE_GIANT :
(temp_rand > 19) ? MONS_FROST_GIANT :
(temp_rand > 9) ? MONS_CYCLOPS :
(temp_rand > 4) ? MONS_HILL_GIANT
: MONS_TITAN);
break;
default:
break;
}
if (create_monster( thing_called, 0, BEH_FRIENDLY,
you.x_pos, you.y_pos,
you.pet_target, MAKE_ITEM_RANDOM_RACE )
!= -1)
if (create_monster(thing_called, 0, BEH_FRIENDLY,
you.x_pos, you.y_pos, you.pet_target,
MAKE_ITEM_RANDOM_RACE) != -1)
summon_swarm( you.experience_level * 20, true, false );
simple_god_message(" sends a plague down upon you!", god);
success = summon_swarm( you.experience_level * 20, true, false );
simple_god_message(success ?
" sends a plague down upon you!" :
"'s plague fails to arrive.",
god);
simple_god_message(success ?
" sends monsters to punish you." :
" has no time to punish you...now.",
god);
simple_god_message(count > 1 ? " sends monsters to punish you." :
count > 0 ? " sends a monster to punish you." :
" has no time to punish you...now.", god);
const int temp_rand = random2(100);
monster_type punisher = ((temp_rand > 84) ? MONS_ORC_WARRIOR :
(temp_rand > 69) ? MONS_ORC_KNIGHT :
(temp_rand > 59) ? MONS_NAGA_WARRIOR :
(temp_rand > 49) ? MONS_CENTAUR_WARRIOR :
(temp_rand > 39) ? MONS_STONE_GIANT :
(temp_rand > 29) ? MONS_FIRE_GIANT :
(temp_rand > 19) ? MONS_FROST_GIANT :
(temp_rand > 9) ? MONS_CYCLOPS :
(temp_rand > 4) ? MONS_HILL_GIANT
: MONS_TITAN);
monster_type punisher = random_servant(GOD_OKAWARU);
if (you.skills[SK_SUMMONINGS] < 3 && you.skills[SK_NECROMANCY] < 3
&& one_chance_in(10))
// Yredelemnulites have the raise dead invocation
if ((you.religion != GOD_YREDELEMNUL ||
you.piety < piety_breakpoint(3)) &&
you.skills[SK_SUMMONINGS] < 3 &&
you.skills[SK_NECROMANCY] < 3 && one_chance_in(10))