summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-07-03 22:07:11 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-07-03 22:07:11 +0000
commit19283b0b952522d1d019f22fcbd35294c13c235c (patch)
treeb3218c8154e017f930b11303b30f4ac5652904ff
parenta32a2ae31db4aca7df3ea969b0c1ef456c0ba159 (diff)
downloadcrawl-ref-19283b0b952522d1d019f22fcbd35294c13c235c.tar.gz
crawl-ref-19283b0b952522d1d019f22fcbd35294c13c235c.zip
Fix 2008767: "random" not working for book choice option
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6375 c06c8d41-db1a-0410-9941-cceddc491573
-rw-r--r--crawl-ref/source/acr.cc2
-rw-r--r--crawl-ref/source/effects.cc14
-rw-r--r--crawl-ref/source/monplace.cc6
-rw-r--r--crawl-ref/source/newgame.cc13
4 files changed, 15 insertions, 20 deletions
diff --git a/crawl-ref/source/acr.cc b/crawl-ref/source/acr.cc
index 1977eaea2d..0451419fcf 100644
--- a/crawl-ref/source/acr.cc
+++ b/crawl-ref/source/acr.cc
@@ -3191,7 +3191,7 @@ static void _world_reacts()
_check_banished();
ASSERT(you.time_taken >= 0);
- // make sure we don't overflow
+ // Make sure we don't overflow.
ASSERT(DBL_MAX - you.elapsed_time > you.time_taken);
you.elapsed_time += you.time_taken;
diff --git a/crawl-ref/source/effects.cc b/crawl-ref/source/effects.cc
index eee963659e..9c9d58be54 100644
--- a/crawl-ref/source/effects.cc
+++ b/crawl-ref/source/effects.cc
@@ -2527,7 +2527,7 @@ void handle_time(long time_delta)
"energies until Zin's power calms it.", MSGCH_GOD);
}
else if (you.magic_contamination >= 5
- && random2(25) <= you.magic_contamination)
+ && random2(25) <= you.magic_contamination)
{
mpr("Your body shudders with the violent release "
"of wild energies!", MSGCH_WARN);
@@ -2544,10 +2544,8 @@ void handle_time(long time_delta)
// Undead enjoy extra contamination explosion damage because
// the magical contamination has a harder time dissipating
// through non-living flesh. :-)
- boom.damage =
- dice_def(3,
- you.magic_contamination
- * (you.is_undead ? 4 : 2) / 4);
+ boom.damage = dice_def(3, you.magic_contamination
+ * (you.is_undead ? 4 : 2) / 4);
boom.thrower = KILL_MISC;
boom.aux_source = "a magical explosion";
boom.beam_source = NON_MONSTER;
@@ -2661,7 +2659,7 @@ void handle_time(long time_delta)
_rot_inventory_food(time_delta);
- // exercise armour *xor* stealth skill: {dlb}
+ // Exercise armour *xor* stealth skill: {dlb}
if (!player_light_armour(true))
{
// lowered random roll from 7 to 6 -- bwross
@@ -2671,11 +2669,11 @@ void handle_time(long time_delta)
exercise(SK_ARMOUR, 1);
}
}
- // exercise stealth skill:
+ // Exercise stealth skill:
else if (you.burden_state == BS_UNENCUMBERED
&& !you.duration[DUR_BERSERKER] && you.special_wield != SPWLD_SHADOW)
{
- // diminishing returns for stealth training by waiting
+ // Diminishing returns for stealth training by waiting.
if ((you.equip[EQ_BODY_ARMOUR] == -1
|| you.equip[EQ_BODY_ARMOUR] != -1
&& random2(item_mass(you.inv[you.equip[EQ_BODY_ARMOUR]])) < 100)
diff --git a/crawl-ref/source/monplace.cc b/crawl-ref/source/monplace.cc
index 71b2e3b58a..b25274a9aa 100644
--- a/crawl-ref/source/monplace.cc
+++ b/crawl-ref/source/monplace.cc
@@ -205,7 +205,7 @@ static void _hell_spawn_random_monsters()
if (env.turns_on_level > taper_off_turn)
{
genodds += (env.turns_on_level - taper_off_turn);
- genodds = (genodds < 0? 20000 : std::min(genodds, 20000));
+ genodds = (genodds < 0 ? 20000 : std::min(genodds, 20000));
}
if (one_chance_in(genodds))
@@ -517,7 +517,6 @@ static int _is_near_stairs(coord_def &p)
int result = 0;
for (int i = -1; i <= 1; ++i)
- {
for (int j = -1; j <= 1; ++j)
{
if (!in_bounds(p))
@@ -536,9 +535,8 @@ static int _is_near_stairs(coord_def &p)
result = (p == you.pos()) ? 2 : 1;
}
}
- }
- return result;
+ return (result);
}
int place_monster(mgen_data mg, bool force_pos)
diff --git a/crawl-ref/source/newgame.cc b/crawl-ref/source/newgame.cc
index 909591a4bc..7bb3e01029 100644
--- a/crawl-ref/source/newgame.cc
+++ b/crawl-ref/source/newgame.cc
@@ -2039,7 +2039,7 @@ static bool _choose_book( item_def& book, int firstbook, int numbooks )
if (Options.prev_book > numbooks && Options.prev_book != SBT_RANDOM)
Options.prev_book = SBT_NO_SELECTION;
- if (!Options.random_pick)
+ if (!Options.random_pick && Options.book != SBT_RANDOM)
{
_print_character_info();
@@ -2113,14 +2113,11 @@ static bool _choose_book( item_def& book, int firstbook, int numbooks )
|| keyin == '+')
{
ng_book = SBT_RANDOM;
- }
- else
- ng_book = keyin - 'a' + 1;
- if (Options.random_pick || keyin == '*' || keyin == '+')
- {
int good_choices = 0;
- if (keyin == '+' || Options.random_pick && Options.good_random)
+ if (keyin == '+'
+ || Options.good_random
+ && (Options.random_pick || Options.book == SBT_RANDOM))
{
for (int i = 0; i < numbooks; i++)
{
@@ -2137,6 +2134,8 @@ static bool _choose_book( item_def& book, int firstbook, int numbooks )
keyin += 'a';
}
+ else
+ ng_book = keyin - 'a' + 1;
book.sub_type = firstbook + keyin - 'a';
return (true);