summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/religion.cc
diff options
context:
space:
mode:
authordolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573>2009-02-06 20:37:18 +0000
committerdolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573>2009-02-06 20:37:18 +0000
commita42d22746172067e745524f8a0ca455b28fe03fa (patch)
tree8fb27af18958304170698e52b5d2d093e811172f /crawl-ref/source/religion.cc
parent41db1a9a17d3d5e1c15c24ba0580e0ed26c6c283 (diff)
downloadcrawl-ref-a42d22746172067e745524f8a0ca455b28fe03fa.tar.gz
crawl-ref-a42d22746172067e745524f8a0ca455b28fe03fa.zip
Adjust piety gain for sacrificed orc corpses. The chances are now:
50% chance of gaining 1 piety: ordinary orc corpses 100% chance of gaining 1 piety: priestly orc corpses 100% chance of gaining 2 piety: Saint Roka's orc corpse git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8935 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/religion.cc')
-rw-r--r--crawl-ref/source/religion.cc96
1 files changed, 54 insertions, 42 deletions
diff --git a/crawl-ref/source/religion.cc b/crawl-ref/source/religion.cc
index e570ed41f9..5969bb59dc 100644
--- a/crawl-ref/source/religion.cc
+++ b/crawl-ref/source/religion.cc
@@ -108,21 +108,21 @@ static const char *_Sacrifice_Messages[NUM_GODS][NUM_PIETY_GAIN] =
},
// Zin
{
- " <>barely glow%</> and disappear%.",
- " <>glow% silver</> and disappear%.",
- " <>glow% blindingly silver</> and disappear%.",
+ " <>barely glow%</> and disappear%.",
+ " <>glow% silver</> and disappear%.",
+ " <>glow% blindingly silver</> and disappear%.",
},
// TSO
{
- " faintly glow% and disappear%.",
- " glow% a golden colour and disappear%.",
- " glow% a brilliant golden colour and disappear%.",
+ " faintly glow% and disappear%.",
+ " glow% a golden colour and disappear%.",
+ " glow% a brilliant golden colour and disappear%.",
},
// Kikubaaqudgha
{
- " slowly rot% away.",
- " rot% away.",
- " rot% away in an instant.",
+ " slowly rot% away.",
+ " rot% away.",
+ " rot% away in an instant.",
},
// Yredelemnul
{
@@ -138,39 +138,39 @@ static const char *_Sacrifice_Messages[NUM_GODS][NUM_PIETY_GAIN] =
},
// Vehumet
{
- " fade% into nothingness.",
- " burn% into nothingness.",
- " explode% into nothingness.",
+ " fade% into nothingness.",
+ " burn% into nothingness.",
+ " explode% into nothingness.",
},
// Okawaru
{
- " slowly burn% to ash.",
- " & consumed by flame.",
- " & consumed in a burst of flame.",
+ " slowly burn% to ash.",
+ " & consumed by flame.",
+ " & consumed in a burst of flame.",
},
// Makhleb
{
- " disappear% without a sign.",
- " flare% red and disappear%.",
- " flare% blood-red and disappear%.",
+ " disappear% without a sign.",
+ " flare% red and disappear%.",
+ " flare% blood-red and disappear%.",
},
// Sif Muna
{
- " & gone without a glow.",
- " glow% faintly for a moment, and & gone.",
- " glow% for a moment, and & gone.",
+ " & gone without a glow.",
+ " glow% faintly for a moment, and & gone.",
+ " glow% for a moment, and & gone.",
},
// Trog
{
- " & slowly consumed by flames.",
- " & consumed in a column of flame.",
- " & consumed in a roaring column of flame.",
+ " & slowly consumed by flames.",
+ " & consumed in a column of flame.",
+ " & consumed in a roaring column of flame.",
},
// Nemelex
{
- " disappear% without a glow.",
- " glow% slightly and disappear%.",
- " glow% with a rainbow of weird colours and disappear%.",
+ " disappear% without a glow.",
+ " glow% slightly and disappear%.",
+ " glow% with a rainbow of weird colours and disappear%.",
},
// Elyvilon (no sacrifices, but used for weapon destruction)
{
@@ -180,15 +180,15 @@ static const char *_Sacrifice_Messages[NUM_GODS][NUM_PIETY_GAIN] =
},
// Lugonu
{
- " & disappears into the void.",
- " & consumed by the void.",
- " & voraciously consumed by the void.",
+ " & disappears into the void.",
+ " & consumed by the void.",
+ " & voraciously consumed by the void.",
},
// Beogh
{
- " slowly crumble% into the ground.",
- " crumble% into the ground.",
- " disintegrate% into the ground.",
+ " slowly crumble% into the ground.",
+ " crumble% into the ground.",
+ " disintegrate% into the ground.",
}
};
@@ -6215,7 +6215,7 @@ static void _give_sac_group_feedback(int which)
// God effects of sacrificing one item from a stack (e.g., a weapon, one
// out of 20 arrows, etc.) Does not modify the actual item in any way.
-static piety_gain_t _sacrifice_one_item_noncount( const item_def& item)
+static piety_gain_t _sacrifice_one_item_noncount(const item_def& item)
{
piety_gain_t relative_piety_gain = PIETY_NONE;
// item_value() multiplies by quantity
@@ -6229,12 +6229,24 @@ static piety_gain_t _sacrifice_one_item_noncount( const item_def& item)
break;
case GOD_BEOGH:
- if (x_chance_in_y(7, 10))
+ {
+ const int item_orig = item.orig_monnum - 1;
+
+ if (coinflip() || mons_class_flag(item_orig, M_PRIEST))
{
- gain_piety(1);
- relative_piety_gain = PIETY_SOME;
+ if (item_orig == MONS_SAINT_ROKA)
+ {
+ gain_piety(2);
+ relative_piety_gain = PIETY_LOTS;
+ }
+ else
+ {
+ gain_piety(1);
+ relative_piety_gain = PIETY_SOME;
+ }
}
break;
+ }
case GOD_NEMELEX_XOBEH:
if (you.attribute[ATTR_CARD_COUNTDOWN] && x_chance_in_y(value, 800))
@@ -6418,7 +6430,7 @@ void offer_items()
}
}
- piety_gain_t relative_piety_gain = PIETY_NONE;
+ piety_gain_t relative_gain = PIETY_NONE;
#if DEBUG_DIAGNOSTICS || DEBUG_SACRIFICE
mprf(MSGCH_DIAGNOSTICS, "Sacrifice item value: %d",
@@ -6432,14 +6444,14 @@ void offer_items()
// Update piety gain if necessary.
if (gain != PIETY_NONE)
{
- if (relative_piety_gain == PIETY_NONE)
- relative_piety_gain = gain;
+ if (relative_gain == PIETY_NONE)
+ relative_gain = gain;
else // some + some = lots
- relative_piety_gain = PIETY_LOTS;
+ relative_gain = PIETY_LOTS;
}
}
- _print_sacrifice_message(you.religion, mitm[i], relative_piety_gain);
+ _print_sacrifice_message(you.religion, mitm[i], relative_gain);
item_was_destroyed(mitm[i]);
destroy_item(i);
i = next;