summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/godwrath.cc
diff options
context:
space:
mode:
authorAlex MacDonald <alex@alexjmacdonald.com>2009-11-15 03:13:28 -0500
committerDavid Ploog <dploog@users.sourceforge.net>2009-11-16 05:30:04 +0100
commit9282c221f93706907095680b1156ab8861640eba (patch)
treebe60390f697b420cbb09394583da140200cf6583 /crawl-ref/source/godwrath.cc
parente3afab40e6c4b0c52f21c74a2fa2b249be8ebc6c (diff)
downloadcrawl-ref-9282c221f93706907095680b1156ab8861640eba.tar.gz
crawl-ref-9282c221f93706907095680b1156ab8861640eba.zip
Kikubaaqdgha finetuning.
Kiku corpse invocation now costs less piety and hunger. Kiku accepts all forms of killing, now including demons. Kiku wrath buffed severely; player can expect miasma, titan zombies, and necromantic miscasts. Casting necromantic spells will also incur miscast effects (but not cause the spell to fail). Kiku '?/G' flavor text updated. Signed-off-by: David Ploog <dploog@users.sourceforge.net>
Diffstat (limited to 'crawl-ref/source/godwrath.cc')
-rw-r--r--crawl-ref/source/godwrath.cc56
1 files changed, 34 insertions, 22 deletions
diff --git a/crawl-ref/source/godwrath.cc b/crawl-ref/source/godwrath.cc
index c8b3e6bcae..ab8c93fab1 100644
--- a/crawl-ref/source/godwrath.cc
+++ b/crawl-ref/source/godwrath.cc
@@ -439,36 +439,48 @@ static bool _kikubaaqudgha_retribution()
// death/necromancy theme
const god_type god = GOD_KIKUBAAQUDGHA;
- if (random2(you.experience_level) > 7 && !one_chance_in(5))
+ god_speaks(god,
+ coinflip() ? "You hear Kikubaaqudgha cackling."
+ : "Kikubaaqudgha's malice focuses upon you.");
+
+ if (random2(you.experience_level) > 4)
{
- bool success = false;
- int how_many = 1 + (you.experience_level / 5) + random2(3);
+ // Either zombies, or corpse rot + skeletons
+ receive_corpses(you.experience_level * 4, you.pos());
- for (; how_many > 0; --how_many)
+ if (coinflip())
+ corpse_rot();
+ }
+
+ if (coinflip())
+ {
+ // necromancy miscast, 20% chance of additional miscast
+ do
{
- if (create_monster(
- mgen_data::hostile_at(MONS_REAPER,
- "the malice of Kikubaaqudgha",
- true, 0, 0, you.pos(), 0, god)) != -1)
+ MiscastEffect(&you, -god, SPTYP_NECROMANCY,
+ 5 + you.experience_level,
+ random2avg(88, 3), "the malice of Kikubaaqudgha");
+ } while (one_chance_in(5));
+
+ } else if (one_chance_in(10)) {
+ // torment, or 3 necromancy miscasts
+ if (!player_res_torment(false))
+ torment(TORMENT_KIKUBAAQUDGHA, you.pos());
+ else
+ {
+ for (int i = 0; i < 3; i++)
{
- success = true;
+ MiscastEffect(&you, -god, SPTYP_NECROMANCY,
+ 5 + you.experience_level,
+ random2avg(88, 3), "the malice of Kikubaaqudgha");
}
}
-
- if (success)
- simple_god_message(" unleashes Death upon you!", god);
- else
- god_speaks(god, "Death has been delayed... for now.");
- }
- else
- {
- god_speaks(god,
- coinflip() ? "You hear Kikubaaqudgha cackling."
- : "Kikubaaqudgha's malice focuses upon you.");
- MiscastEffect(&you, -god, SPTYP_NECROMANCY, 5 + you.experience_level,
- random2avg(88, 3), "the malice of Kikubaaqudgha");
}
+ // Every act of retribution causes corpses in view to rise against you.
+ animate_dead(&you, 1 + random2(3), BEH_HOSTILE, MHITYOU, 0,
+ "the malice of Kikubaaqudgha");
+
return (true);
}