summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/attitude-change.cc
diff options
context:
space:
mode:
authorAdam Borowski <kilobyte@angband.pl>2011-01-14 01:17:15 +0100
committerAdam Borowski <kilobyte@angband.pl>2011-01-14 01:17:15 +0100
commita9ce00c51c2a026afe85bbcd781be31fb7afcf8d (patch)
tree72b7c17557da84451d9832adcd36cae04f4a1ca2 /crawl-ref/source/attitude-change.cc
parent2b9a81daa04dab5bd1d21c21b77a39822acc5a26 (diff)
downloadcrawl-ref-a9ce00c51c2a026afe85bbcd781be31fb7afcf8d.tar.gz
crawl-ref-a9ce00c51c2a026afe85bbcd781be31fb7afcf8d.zip
Axe the ring of Charms. Those damn witches hexed it!
After several attempts to balance it, it was always either overpowered or useless. No wonders, we have such diverse races as kobolds, orcs, merfolk, mummies and draconians -- it's hard to come up with a formula that matches monsters of that races well. There's a minor save breakage: brooch of Shielding, robe of Clouds and hat of Pondering have their descriptions shifted by one, the hat of Pondering causes rain clouds. We don't have any ifdefs for art-data.txt, the breakage is small enough I didn't bother with shims.
Diffstat (limited to 'crawl-ref/source/attitude-change.cc')
-rw-r--r--crawl-ref/source/attitude-change.cc71
1 files changed, 0 insertions, 71 deletions
diff --git a/crawl-ref/source/attitude-change.cc b/crawl-ref/source/attitude-change.cc
index 4757fc67e5..2000652b78 100644
--- a/crawl-ref/source/attitude-change.cc
+++ b/crawl-ref/source/attitude-change.cc
@@ -145,77 +145,6 @@ void fedhas_neutralise(monster* mons)
}
}
-static void _print_charm_converted_speech(const std::string key,
- monster *mon,
- msg_channel_type channel)
-{
- std::string msg = getSpeakString("charm_converted_" + key);
-
- if (!msg.empty())
- {
- msg = do_mon_str_replacements(msg, mon);
- mpr(msg.c_str(), channel);
- }
-}
-
-void passive_enslavement_convert(monster* mons)
-{
- if (you.are_charming()
- && mons->alive()
- && is_player_same_species(mons->type, false)
- && !form_changed_physiology()
- && mons->foe == MHITYOU
- && !mons->is_summoned()
- && !mons->is_shapeshifter()
- && !testbits(mons->flags, MF_ATT_CHANGE_ATTEMPT)
- && !mons->friendly()
- && you.visible_to(mons)
- && !mons->asleep()
- && !mons_is_confused(mons)
- && !mons->paralysed())
- {
- mons->flags |= MF_ATT_CHANGE_ATTEMPT;
-
- const int hd = mons->hit_dice;
-
- if (random2(random2(you.experience_level))
- > random2(hd) + hd + random2(5)
- && hd * hd < you.experience_level * 7)
- {
- passive_enslavement_convert_monster(mons);
- stop_running();
- }
- }
-}
-
-// enslavement for RING_CHARM
-void passive_enslavement_convert_monster(monster* mons)
-{
- if (one_chance_in(1 + mons->hit_dice * mons->hit_dice))
- {
- _print_charm_converted_speech("reaction_sight", mons,
- MSGCH_FRIEND_ENCHANT);
- if (!one_chance_in(3))
- _print_charm_converted_speech("speech_sight", mons, MSGCH_TALK);
-
- mons->attitude = ATT_FRIENDLY;
-
- // The monster is not really *created* friendly, but should it
- // become hostile later on, it won't count as a good kill.
- mons->flags |= MF_NO_REWARD;
-
- if (mons->is_patrolling())
- // Make monster stop patrolling and forget their patrol point,
- // they're supposed to follow you now.
- mons->patrol_point = coord_def(0, 0);
- }
- else
- mons->add_ench(ENCH_CHARM);
-
- behaviour_event(mons, ME_ALERT, MHITNOT);
- mons_att_changed(mons);
-}
-
// Make summoned (temporary) god gifts disappear on penance or when
// abandoning the god in question (Trog or TSO).
bool make_god_gifts_disappear()