summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
authorDavid Lawrence Ramsey <dolorous@users.sourceforge.net>2009-11-18 13:46:55 -0600
committerDavid Lawrence Ramsey <dolorous@users.sourceforge.net>2009-11-18 13:46:55 -0600
commitcd7d5deb2327bb1f4dda96fc50ba56b674a2569f (patch)
treec32ccc1ca489296cf3d1b91e35d2f9215eb28f81 /crawl-ref
parent2a6fe1009197349537396b5e9f208f1db4e48c8a (diff)
downloadcrawl-ref-cd7d5deb2327bb1f4dda96fc50ba56b674a2569f.tar.gz
crawl-ref-cd7d5deb2327bb1f4dda96fc50ba56b674a2569f.zip
Remove Zin's summoning-based wrath, as it no longer fits.
First, Jiyva considers eyeballs slimes for his purposes. Second, insect plagues are more suited to old Zin, who coupled them with angels for an Old Testament theme, so to speak. (The latter is most closely suited to Fedhas, or it would be if he were the god of nature in general instead of just plants and fungi. It's also inappropriate for Zin now, since one of the insects summoned causes disease and is, hence, chaotic.)
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/godwrath.cc62
-rw-r--r--crawl-ref/source/spells2.cc10
-rw-r--r--crawl-ref/source/spells2.h4
3 files changed, 14 insertions, 62 deletions
diff --git a/crawl-ref/source/godwrath.cc b/crawl-ref/source/godwrath.cc
index 42a5e63a0a..a712ce0fea 100644
--- a/crawl-ref/source/godwrath.cc
+++ b/crawl-ref/source/godwrath.cc
@@ -172,64 +172,20 @@ static void _zin_remove_good_mutations()
static bool _zin_retribution()
{
- // surveillance/creeping doom theme
+ // preaching/creeping doom theme
const god_type god = GOD_ZIN;
- int punishment = random2(10);
+ int punishment = random2(8);
// If not mutated, do something else instead.
if (punishment > 7 && !how_mutated())
- punishment = random2(8);
+ punishment = random2(6);
switch (punishment)
{
case 0:
case 1:
- case 2: // summon eyes or pestilence (30%)
- if (random2(you.experience_level) > 7 && !one_chance_in(5))
- {
- const monster_type eyes[] = {
- MONS_GIANT_EYEBALL, MONS_EYE_OF_DRAINING,
- MONS_EYE_OF_DEVASTATION, MONS_GOLDEN_EYE, MONS_GREAT_ORB_OF_EYES
- };
-
- int how_many = 1 + (you.experience_level / 10) + random2(3);
- bool success = false;
-
- for (; how_many > 0; --how_many)
- {
- const monster_type mon = RANDOM_ELEMENT(eyes);
-
- coord_def mon_pos;
- if (!monster_random_space(mon, mon_pos))
- mon_pos = you.pos();
-
- if (mons_place(
- mgen_data::hostile_at(mon, "the power of Zin",
- true, 0, 0, mon_pos, 0, god)) != -1)
- {
- success = true;
- }
- }
-
- if (success)
- god_speaks(god, "You feel Zin's eyes turn towards you...");
- else
- {
- simple_god_message("'s eyes are elsewhere at the moment.",
- god);
- }
- }
- else
- {
- bool success = cast_summon_swarm(you.experience_level * 20,
- god, true, true);
- simple_god_message(success ? " sends a plague down upon you!"
- : "'s plague fails to arrive.", god);
- }
- break;
- case 3:
- case 4: // recital (20%)
+ case 2: // recital
simple_god_message(" recites the Axioms of Law to you!", god);
switch (random2(3))
{
@@ -244,17 +200,17 @@ static bool _zin_retribution()
break;
}
break;
- case 5:
- case 6: // famine (20%)
+ case 3:
+ case 4: // famine
simple_god_message(" sends a famine down upon you!", god);
make_hungry(you.hunger / 2, false);
break;
- case 7: // noisiness (10%)
+ case 5: // noisiness
simple_god_message(" booms out: \"Turn to the light! REPENT!\"", god);
noisy(25, you.pos()); // same as scroll of noise
break;
- case 8:
- case 9: // remove good mutations (20%)
+ case 6:
+ case 7: // remove good mutations
_zin_remove_good_mutations();
break;
}
diff --git a/crawl-ref/source/spells2.cc b/crawl-ref/source/spells2.cc
index ab3c2d378f..52b6ac829d 100644
--- a/crawl-ref/source/spells2.cc
+++ b/crawl-ref/source/spells2.cc
@@ -1208,12 +1208,10 @@ bool cast_summon_scorpions(int pow, god_type god)
// Creates a mixed swarm of typical swarming animals.
// Number, duration and friendlinesss depend on spell power.
-bool cast_summon_swarm(int pow, god_type god,
- bool force_hostile,
- bool permanent)
+bool cast_summon_swarm(int pow, god_type god)
{
bool success = false;
- const int dur = permanent ? 0 : std::min(2 + (random2(pow) / 4), 6);
+ const int dur = std::min(2 + (random2(pow) / 4), 6);
const int how_many = stepdown_value(2 + random2(pow)/10 + random2(pow)/25,
2, 2, 6, 8);
@@ -1228,12 +1226,12 @@ bool cast_summon_swarm(int pow, god_type god,
};
const monster_type mon = RANDOM_ELEMENT(swarmers);
- const bool friendly = force_hostile ? false : (random2(pow) > 7);
+ const bool friendly = (random2(pow) > 7);
if (create_monster(
mgen_data(mon,
friendly ? BEH_FRIENDLY : BEH_HOSTILE, &you,
- dur, !permanent ? SPELL_SUMMON_SWARM : 0,
+ dur, SPELL_SUMMON_SWARM : 0,
you.pos(),
MHITYOU,
0, god)) != -1)
diff --git a/crawl-ref/source/spells2.h b/crawl-ref/source/spells2.h
index efa011c3ba..c85b9ea605 100644
--- a/crawl-ref/source/spells2.h
+++ b/crawl-ref/source/spells2.h
@@ -36,9 +36,7 @@ bool cast_summon_butterflies(int pow, god_type god = GOD_NO_GOD);
bool cast_summon_small_mammals(int pow, god_type god = GOD_NO_GOD);
bool cast_sticks_to_snakes(int pow, god_type god = GOD_NO_GOD);
bool cast_summon_scorpions(int pow, god_type god = GOD_NO_GOD);
-bool cast_summon_swarm(int pow, god_type god = GOD_NO_GOD,
- bool force_hostile = false,
- bool permanent = false);
+bool cast_summon_swarm(int pow, god_type god = GOD_NO_GOD);
bool cast_call_canine_familiar(int pow, god_type god = GOD_NO_GOD);
bool cast_summon_elemental(int pow, god_type god = GOD_NO_GOD,
monster_type restricted_type = MONS_NO_MONSTER,