diff options
author | David Lawrence Ramsey <dolorous@users.sourceforge.net> | 2009-11-19 18:02:42 -0600 |
---|---|---|
committer | David Lawrence Ramsey <dolorous@users.sourceforge.net> | 2009-11-19 18:15:26 -0600 |
commit | 0b00d0d2282f9572320a647c30d8334020fce6f6 (patch) | |
tree | 636046cf36a2371b8623fb0779348a3a07d0fa48 /crawl-ref/source | |
parent | f9f2105b119464e055df7999096593fa105ed5ea (diff) | |
download | crawl-ref-0b00d0d2282f9572320a647c30d8334020fce6f6.tar.gz crawl-ref-0b00d0d2282f9572320a647c30d8334020fce6f6.zip |
Split the kill-natural-unholy/evil and kill-unclean/chaotic conducts.
Diffstat (limited to 'crawl-ref/source')
-rw-r--r-- | crawl-ref/source/enum.h | 3 | ||||
-rw-r--r-- | crawl-ref/source/mon-stuff.cc | 25 | ||||
-rw-r--r-- | crawl-ref/source/religion.cc | 14 |
3 files changed, 34 insertions, 8 deletions
diff --git a/crawl-ref/source/enum.h b/crawl-ref/source/enum.h index 3e39f69df1..8bd163a786 100644 --- a/crawl-ref/source/enum.h +++ b/crawl-ref/source/enum.h @@ -747,7 +747,9 @@ enum conduct_type DID_KILL_LIVING, DID_KILL_UNDEAD, DID_KILL_DEMON, + DID_KILL_NATURAL_UNHOLY, // TSO DID_KILL_NATURAL_EVIL, // TSO + DID_KILL_UNCLEAN, // Zin DID_KILL_CHAOTIC, // Zin DID_KILL_WIZARD, // Trog DID_KILL_PRIEST, // Beogh @@ -759,6 +761,7 @@ enum conduct_type DID_UNDEAD_KILLED_BY_SERVANT, DID_DEMON_KILLED_BY_UNDEAD_SLAVE, DID_DEMON_KILLED_BY_SERVANT, + DID_NATURAL_UNHOLY_KILLED_BY_SERVANT, // TSO DID_NATURAL_EVIL_KILLED_BY_SERVANT, // TSO DID_HOLY_KILLED_BY_UNDEAD_SLAVE, DID_HOLY_KILLED_BY_SERVANT, diff --git a/crawl-ref/source/mon-stuff.cc b/crawl-ref/source/mon-stuff.cc index 6ac6ef9113..4bc9c03d4a 100644 --- a/crawl-ref/source/mon-stuff.cc +++ b/crawl-ref/source/mon-stuff.cc @@ -1638,7 +1638,13 @@ int monster_die(monsters *monster, killer_type killer, did_god_conduct(DID_KILL_LIVING, monster->hit_dice, true, monster); - if (monster->is_unholy() || monster->is_evil()) + if (monster->is_unholy()) + { + did_god_conduct(DID_KILL_NATURAL_UNHOLY, + monster->hit_dice, true, monster); + } + + if (monster->is_evil()) { did_god_conduct(DID_KILL_NATURAL_EVIL, monster->hit_dice, true, monster); @@ -1656,7 +1662,13 @@ int monster_die(monsters *monster, killer_type killer, } // Zin hates unclean and chaotic beings. - if (monster->is_unclean() || monster->is_chaotic()) + if (monster->is_unclean()) + { + did_god_conduct(DID_KILL_UNCLEAN, + monster->hit_dice, true, monster); + } + + if (monster->is_chaotic()) { did_god_conduct(DID_KILL_CHAOTIC, monster->hit_dice, true, monster); @@ -1883,7 +1895,14 @@ int monster_die(monsters *monster, killer_type killer, notice |= did_god_conduct(DID_LIVING_KILLED_BY_SERVANT, monster->hit_dice); - if (monster->is_unholy() || monster->is_evil()) + if (monster->is_unholy()) + { + notice |= did_god_conduct( + DID_NATURAL_UNHOLY_KILLED_BY_SERVANT, + monster->hit_dice); + } + + if (monster->is_evil()) { notice |= did_god_conduct( DID_NATURAL_EVIL_KILLED_BY_SERVANT, diff --git a/crawl-ref/source/religion.cc b/crawl-ref/source/religion.cc index d6b83bbdf8..244aa832fc 100644 --- a/crawl-ref/source/religion.cc +++ b/crawl-ref/source/religion.cc @@ -2988,6 +2988,7 @@ bool did_god_conduct(conduct_type thing_done, int level, bool known, } break; + case DID_KILL_NATURAL_UNHOLY: case DID_KILL_NATURAL_EVIL: if (you.religion == GOD_SHINING_ONE && !god_hates_attacking_friend(you.religion, victim)) @@ -2999,6 +3000,7 @@ bool did_god_conduct(conduct_type thing_done, int level, bool known, } break; + case DID_KILL_UNCLEAN: case DID_KILL_CHAOTIC: if (you.religion == GOD_ZIN && !god_hates_attacking_friend(you.religion, victim)) @@ -3261,6 +3263,7 @@ bool did_god_conduct(conduct_type thing_done, int level, bool known, } break; + case DID_NATURAL_UNHOLY_KILLED_BY_SERVANT: case DID_NATURAL_EVIL_KILLED_BY_SERVANT: if (you.religion == GOD_SHINING_ONE) { @@ -3474,11 +3477,12 @@ bool did_god_conduct(conduct_type thing_done, int level, bool known, "Necromancy", "Holy", "Unholy", "Attack Holy", "Attack Neutral", "Attack Friend", "Friend Died", "Stab", "Unchivalric Attack", "Poison", "Field Sacrifice", "Kill Living", "Kill Undead", - "Kill Demon", "Kill Natural Evil", "Kill Chaotic", - "Kill Wizard", "Kill Priest", "Kill Holy", "Kill Fast", - "Undead Slave Kill Living", "Servant Kill Living", - "Undead Slave Kill Undead", "Servant Kill Undead", - "Undead Slave Kill Demon", "Servant Kill Demon", + "Kill Demon", "Kill Natural Unholy", "Kill Natural Evil", + "Kill Unclean", "Kill Chaotic", "Kill Wizard", "Kill Priest", + "Kill Holy", "Kill Fast", "Undead Slave Kill Living", + "Servant Kill Living", "Undead Slave Kill Undead", + "Servant Kill Undead", "Undead Slave Kill Demon", + "Servant Kill Demon", "Servant Kill Natural Unholy", "Servant Kill Natural Evil", "Undead Slave Kill Holy", "Servant Kill Holy", "Spell Memorise", "Spell Cast", "Spell Practise", "Spell Nonutility", "Cards", "Stimulants", |