Xom won't protect you from Beogh revenge, too capricious for that.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1969 c06c8d41-db1a-0410-9941-cceddc491573
V4DWL5WBO2JCODVS5QQNWXDH4DAYZN3D5V3UDCHM2KKOMADOTEDQC
JFWC6LBPSC4SE52KE5FCBC2ZVCGLEJ6SJH5UUN5JRJLTNENENIJQC
7OZGLL7FSMUNXOTGDHQILMXI2EXH7EXPJZTO4KP6KJYWZANJAKXAC
U3KGUJJQWQORJIIFH3ADVNIEEX5HOX6KEOXO7DJSL7L3Z6GG3PAQC
6A3UHWB2EORRGBKEWCL2SPBH2BGCYRWWPNKCQLGFJHOLEQZLTFLAC
XMX2Y7QSEXGV2SPDOFDNM2BQJH3S3WTMYLJYUREYV72NWTURHMSQC
WZNB427K3EUNV3FMVXLQTM4UIHER4FIKQXWLUUXRNQC3OQ33VQYAC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
WTUFDJICW653ERO6FH63XYGOZQRVY3DVLPIPFN4BMA4NJH5UD3LAC
CQ24AVAI6SW3AHTIDMLPSTRRBEU6FHRF5I5FD6G5QIYE6PO4BQMQC
7AMQN7MITMXBNVDAK5VOXTQ4TZIAOD6ZLOFJG7GQMBTY23Y2BKSAC
TJRYL3NXPW5IUGEV3YOC7JYWEXCZDBFPLT4AUG4P227WVKVB72ZAC
NQMXQ6OQVUSC7Y7F7IL252QW4A5JED224EECNHWAM4ZZYVNY745AC
2N5AKUYV6EUUT254C47WSHZKD7FGN65JKJ3RCKSDP74XJIHIFMDQC
WXSNNK2RXP3DQFAEQGQUZJHFWXJC7ZKG2WURZGL566UDM4YXFSWQC
KW43PGXTTM57DXUGGBQXJ5G5OYYIY3WB76TXIKL2ZCIJGH7GH4LAC
P2ZCF3BBG523ZEOD6XQA4X5YEHBTWH3IM33YVHXP2SQ5POXZIH4QC
RB3ZDZXUZ3KVU5C4MFWTQB4J3PCQ5IQS4UVUBRS3TLSPFKBWNFDAC
I2B33Z7NZGC33AMDSSK446AZZYWKPHWLAGULVHKKZU4MVB4BNJOAC
const char *plural = count == 1? "" : "s";
const char *ssuffix = count == 1? "s" : "";
std::string text = "The book"; text += plural;
text += " burst"; text += ssuffix;
text += " into flames.";
mpr(text.c_str());
mpr(count == 1 ? "The book bursts into flames."
: "The books burst into flames.", MSGCH_GOD);
switch(random2(3))
{
case 0:
snprintf(info, INFO_SIZE, " fumes, \"This is no small sin, orc. Repent!\"");
break;
case 1:
snprintf(info, INFO_SIZE, " whispers, \"You will pay for this transgression.\"");
break;
default:
snprintf(info, INFO_SIZE, " rages, \"Eye for an eye...\"");
}
simple_god_message(info, GOD_BEOGH);
const char* messages[3] = {
" fumes, \"This is no small sin, orc. Repent!\"",
" whispers, \"You will pay for this transgression.\"",
" rages, \"An eye for an eye...\""
};
simple_god_message(RANDOM_ELEMENT(messages), GOD_BEOGH);
if (coinflip())
simple_god_message("'s voice booms out: \"Heretic, die!\"", GOD_BEOGH);
else
god_speaks(GOD_BEOGH, "You hear Beogh's thundering voice: \"Suffer, infidel!\"");
const char* messages[2] = {
"Beogh's voice booms out: \"Heretic, die!\"",
"You hear Beogh's thundering voice: \"Suffer, infidel!\""
};
god_speaks(GOD_BEOGH, RANDOM_ELEMENT(messages));
if (coinflip())
simple_god_message(" is not amused about the destruction of his idols.", GOD_BEOGH);
else
simple_god_message(" seems highly displeased.", GOD_BEOGH);
const char* messages[2] = {
" is not amused about the destruction of his idols.",
" seems highly displeased."
};
simple_god_message(RANDOM_ELEMENT(messages), GOD_BEOGH);
// checking for species-related abilities and mutagenic counterparts {dlb}:
if (you.attribute[ATTR_TRANSFORMATION] == TRAN_NONE
&& ((you.species == SP_GREY_ELF && you.experience_level >= 5)
|| (you.species == SP_HIGH_ELF && you.experience_level >= 15)))
if ( ((you.species == SP_GREY_ELF && you.experience_level >= 5) ||
(you.species == SP_HIGH_ELF && you.experience_level >= 15)) &&
you.attribute[ATTR_TRANSFORMATION] == TRAN_NONE )
if (you.mutation[MUT_BREATHE_POISON])
add_talent(talents, ABIL_BREATHE_POISON, check_confused );
else
add_talent(talents, ABIL_SPIT_POISON, check_confused );
add_talent(talents, you.mutation[MUT_BREATHE_POISON] ?
ABIL_BREATHE_POISON : ABIL_SPIT_POISON, check_confused);
if (you.religion == GOD_ELYVILON)
{
add_talent(talents, ABIL_ELYVILON_DESTROY_WEAPONS, check_confused );
}
else if (you.religion == GOD_TROG)
{
add_talent(talents, ABIL_TROG_BURN_BOOKS, check_confused );
}
//jmf: alternately put check elsewhere
if ((you.level_type == LEVEL_DUNGEON && you.mutation[MUT_MAPPING]) ||
(you.level_type == LEVEL_PANDEMONIUM && you.mutation[MUT_MAPPING]==3))
{
add_talent(talents, ABIL_MAPPING, check_confused );
}
if (you.duration[DUR_LEVITATION])
add_talent(talents, ABIL_EVOKE_STOP_LEVITATING, check_confused );
else
add_talent(talents, ABIL_EVOKE_LEVITATE, check_confused );
add_talent(talents, you.duration[DUR_LEVITATION] ?
ABIL_EVOKE_STOP_LEVITATING : ABIL_EVOKE_LEVITATE,
check_confused);