From 7351857a9a93080e85cc0fc6a87a5571cb1dadcc Mon Sep 17 00:00:00 2001 From: j-p-e-g Date: Mon, 7 Jan 2008 19:24:34 +0000 Subject: Removed DISRUPTION brand and added DRAGON_SLAYING. The old disruption code should probably be moved over to holy wrath but I'm unsure whether I should replace the current one. I'm talking about the "You are blasted by holy energy!" bit in the commit below. For now, I've simply removed it. All dragon slaying currently does is what orc slaying does, only against dragons. So no additional effects, resistances or otherwise. Both slaying brands are still randomly created (though dragon only for polearms), I haven't changed anything about that. Also removed DISTORTION effect upon wielding such a weapon. Xom is still pleased about seeing you in this conundrum, but not as much as when you were blasted right away. Changed distortion description to explicitly mentioning its effects. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3219 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/fight.cc | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) (limited to 'crawl-ref/source/fight.cc') diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc index 0cfde5f4db..48dd950bff 100644 --- a/crawl-ref/source/fight.cc +++ b/crawl-ref/source/fight.cc @@ -1908,6 +1908,21 @@ bool melee_attack::apply_damage_brand() } break; + case SPWPN_DRAGON_SLAYING: + if (mons_genus(defender->mons_species()) == MONS_DRAGON + || mons_genus(defender->mons_species()) == MONS_DRACONIAN) + { + special_damage = 1 + random2(damage_done); + if (defender_visible) + special_damage_message = + make_stringf( + "%s %s%s", + defender->name(DESC_CAP_THE).c_str(), + defender->conj_verb("convulse").c_str(), + special_attack_punctuation().c_str()); + } + break; + case SPWPN_VENOM: case SPWPN_STAFF_OF_OLGREB: if (!one_chance_in(4)) @@ -2031,21 +2046,6 @@ bool melee_attack::apply_damage_brand() } break; - case SPWPN_DISRUPTION: - if (defender->holiness() == MH_UNDEAD && !one_chance_in(3)) - { - if (defender_visible) - special_damage_message = - defender->atype() == ACT_MONSTER? - make_stringf("%s %s.", - defender->name(DESC_CAP_THE).c_str(), - defender->conj_verb("shudder").c_str()) - : ("You are blasted by holy energy!"); - - special_damage += random2avg((1 + (damage_done * 3)), 3); - } - break; - case SPWPN_PAIN: if (defender->res_negative_energy() <= 0 && random2(8) <= attacker->skill(SK_NECROMANCY)) -- cgit v1.2.3-54-g00ecf