diff options
author | Shmuale Mark <shm.mark@gmail.com> | 2014-06-11 09:54:49 -0400 |
---|---|---|
committer | Shmuale Mark <shm.mark@gmail.com> | 2014-06-11 09:54:49 -0400 |
commit | 2cf48292452445b275df5d685341c721aadafa5e (patch) | |
tree | 1c4fce0323717e30e26e89d2eeeb17e9f5c35eb7 /crawl-ref/source/ability.cc | |
parent | 3208b8c6f14b47ebc069ae040432dc5f15435bfb (diff) | |
parent | e9415a749937a864f07066d4fd07b66b538b3f5c (diff) | |
download | crawl-ref-2cf48292452445b275df5d685341c721aadafa5e.tar.gz crawl-ref-2cf48292452445b275df5d685341c721aadafa5e.zip |
Merge branch 'mon-pickup'
The problem with monster pickup of the type that this branch removes
is that it encourages tedious behaviour to achieve the optimum result.
While in general people don't bother to pick up every weapon and armour
and stuff it upstairs, that would be a way to prevent monsters from ever
picking up items you've seen. With Apportation, you don't even have to
reach the item, and on a mummy, say, you don't even have to worry about
the infintesimal food cost. People do already do this for chaos and
distortion weapons, and it is not a very good thing.
Not allowing allies to pick up items is related, in that it means that the
code can be simpler, but it also has problems of micromanagement,
weirdnesses with the ctrl-T command, and allies already have their share
of problems. I hope that the compensations for Beogh and mercenaries make
up for what is lost in terms of fun.
Conflicts:
crawl-ref/source/tag-version.h
Diffstat (limited to 'crawl-ref/source/ability.cc')
-rw-r--r-- | crawl-ref/source/ability.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/crawl-ref/source/ability.cc b/crawl-ref/source/ability.cc index 645fa09078..4a5fe8e53c 100644 --- a/crawl-ref/source/ability.cc +++ b/crawl-ref/source/ability.cc @@ -180,7 +180,7 @@ ability_type god_abilities[NUM_GODS][MAX_GOD_ABILITIES] = ABIL_LUGONU_CORRUPT, ABIL_LUGONU_ABYSS_ENTER }, // Beogh { ABIL_NON_ABILITY, ABIL_BEOGH_SMITING, ABIL_NON_ABILITY, - ABIL_BEOGH_RECALL_ORCISH_FOLLOWERS, ABIL_NON_ABILITY }, + ABIL_BEOGH_RECALL_ORCISH_FOLLOWERS, ABIL_BEOGH_GIFT_ITEM }, // Jiyva { ABIL_JIYVA_CALL_JELLY, ABIL_JIYVA_JELLY_PARALYSE, ABIL_NON_ABILITY, ABIL_JIYVA_SLIMIFY, ABIL_JIYVA_CURE_BAD_MUTATION }, @@ -377,6 +377,8 @@ static const ability_def Ability_List[] = 3, 0, 80, generic_cost::fixed(3), 0, ABFLAG_NONE}, { ABIL_BEOGH_RECALL_ORCISH_FOLLOWERS, "Recall Orcish Followers", 2, 0, 50, 0, 0, ABFLAG_NONE}, + { ABIL_BEOGH_GIFT_ITEM, "Give Item to Follower", + 0, 0, 0, 0, 0, ABFLAG_NONE}, // Jiyva { ABIL_JIYVA_CALL_JELLY, "Request Jelly", 2, 0, 20, 1, 0, ABFLAG_NONE}, @@ -1097,6 +1099,7 @@ talent get_talent(ability_type ability, bool check_confused) case ABIL_ASHENZARI_TRANSFER_KNOWLEDGE: case ABIL_ASHENZARI_END_TRANSFER: case ABIL_ASHENZARI_SCRYING: + case ABIL_BEOGH_GIFT_ITEM: case ABIL_JIYVA_CALL_JELLY: case ABIL_JIYVA_CURE_BAD_MUTATION: case ABIL_JIYVA_JELLY_PARALYSE: @@ -2821,6 +2824,11 @@ static bool _do_ability(const ability_def& abil) } break; + case ABIL_BEOGH_GIFT_ITEM: + if (!beogh_gift_item()) + return false; + break; + case ABIL_BEOGH_RECALL_ORCISH_FOLLOWERS: start_recall(2); break; |