diff options
author | dolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-10-19 20:20:44 +0000 |
---|---|---|
committer | dolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-10-19 20:20:44 +0000 |
commit | 70414943b0b5ee327153e35d6ad1d6a97067da6a (patch) | |
tree | 5ff2cabc90a961bc6f423ba2d7962708e6017ab5 /crawl-ref/source | |
parent | f77e806dbb99a1e775f57bac2129c94288a6c02b (diff) | |
download | crawl-ref-70414943b0b5ee327153e35d6ad1d6a97067da6a.tar.gz crawl-ref-70414943b0b5ee327153e35d6ad1d6a97067da6a.zip |
Rework angels somewhat. To synchronize with daevas, angels are now
agents of TSO rather than Zin, get the same draining protection, and get
the same melee attacks. To differentiate from them, they always get a
mace or great mace of holy wrath. TSO's "Summon Daeva" is now "Summon
Divine Warrior", and has a 50% chance of summoning either an angel or a
daeva.
Note that Zin's angel retribution is not changed yet.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7288 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source')
-rw-r--r-- | crawl-ref/source/abl-show.cc | 13 | ||||
-rw-r--r-- | crawl-ref/source/dat/descript/ability.txt | 4 | ||||
-rw-r--r-- | crawl-ref/source/dat/descript/gods.txt | 2 | ||||
-rw-r--r-- | crawl-ref/source/dat/descript/monsters.txt | 2 | ||||
-rw-r--r-- | crawl-ref/source/enum.h | 2 | ||||
-rw-r--r-- | crawl-ref/source/makeitem.cc | 13 | ||||
-rw-r--r-- | crawl-ref/source/mon-data.h | 5 | ||||
-rw-r--r-- | crawl-ref/source/mon-util.cc | 1 | ||||
-rw-r--r-- | crawl-ref/source/religion.cc | 2 | ||||
-rw-r--r-- | crawl-ref/source/spells2.cc | 2 |
10 files changed, 23 insertions, 23 deletions
diff --git a/crawl-ref/source/abl-show.cc b/crawl-ref/source/abl-show.cc index 7e93aa74f8..53440c7e27 100644 --- a/crawl-ref/source/abl-show.cc +++ b/crawl-ref/source/abl-show.cc @@ -102,7 +102,7 @@ ability_type god_abilities[MAX_NUM_GODS][MAX_GOD_ABILITIES] = ABIL_NON_ABILITY, ABIL_ZIN_SANCTUARY }, // TSO { ABIL_NON_ABILITY, ABIL_TSO_DIVINE_SHIELD, ABIL_NON_ABILITY, - ABIL_TSO_CLEANSING_FLAME, ABIL_TSO_SUMMON_DAEVA }, + ABIL_TSO_CLEANSING_FLAME, ABIL_TSO_SUMMON_DIVINE_WARRIOR }, // Kikubaaqudgha { ABIL_KIKU_RECALL_UNDEAD_SLAVES, ABIL_NON_ABILITY, ABIL_KIKU_ENSLAVE_UNDEAD, ABIL_NON_ABILITY, @@ -226,7 +226,7 @@ static const ability_def Ability_List[] = // The Shining One { ABIL_TSO_DIVINE_SHIELD, "Divine Shield", 3, 0, 50, 2, ABFLAG_NONE }, { ABIL_TSO_CLEANSING_FLAME, "Cleansing Flame", 5, 0, 100, 2, ABFLAG_NONE }, - { ABIL_TSO_SUMMON_DAEVA, "Summon Daeva", 8, 0, 150, 4, ABFLAG_NONE }, + { ABIL_TSO_SUMMON_DIVINE_WARRIOR, "Summon Divine Warrior", 8, 0, 150, 4, ABFLAG_NONE }, // Kikubaaqudgha { ABIL_KIKU_RECALL_UNDEAD_SLAVES, "Recall Undead Slaves", 2, 0, 50, 0, ABFLAG_NONE }, @@ -704,7 +704,7 @@ static talent _get_talent(ability_type ability, bool check_confused) break; case ABIL_ZIN_SANCTUARY: - case ABIL_TSO_SUMMON_DAEVA: + case ABIL_TSO_SUMMON_DIVINE_WARRIOR: case ABIL_KIKU_INVOKE_DEATH: case ABIL_YRED_ENSLAVE_SOUL: case ABIL_ELYVILON_DIVINE_VIGOUR: @@ -1467,8 +1467,11 @@ static bool _do_ability(const ability_def& abil) exercise(SK_INVOCATIONS, 3 + random2(6)); break; - case ABIL_TSO_SUMMON_DAEVA: - summon_daeva(you.skills[SK_INVOCATIONS] * 4, GOD_SHINING_ONE); + case ABIL_TSO_SUMMON_DIVINE_WARRIOR: + if (coinflip()) + summon_guardian(you.skills[SK_INVOCATIONS] * 4, GOD_SHINING_ONE); + else + summon_daeva(you.skills[SK_INVOCATIONS] * 4, GOD_SHINING_ONE); exercise(SK_INVOCATIONS, 8 + random2(10)); break; diff --git a/crawl-ref/source/dat/descript/ability.txt b/crawl-ref/source/dat/descript/ability.txt index f465e90eb6..2d60ad5151 100644 --- a/crawl-ref/source/dat/descript/ability.txt +++ b/crawl-ref/source/dat/descript/ability.txt @@ -170,9 +170,9 @@ Cleansing Flame Hurls a huge blast of divine fury, severely damaging undead and demons. All other hostiles also take damage, if less so, whereas allies are never affected. %%%% -Summon Daeva +Summon Divine Warrior -Summoned Daevas are powerful warriors against evil. They might be blessed by the Shining One to stay longer or even permanently in this world. +Summoned Angels and Daevas are powerful warriors against evil. They might be blessed by the Shining One to stay longer or even permanently in this world. %%%% # Both Kikubaaqudgha and Yredelmnul. Recall Undead Slaves diff --git a/crawl-ref/source/dat/descript/gods.txt b/crawl-ref/source/dat/descript/gods.txt index 006bee1f2c..096ffbcaff 100644 --- a/crawl-ref/source/dat/descript/gods.txt +++ b/crawl-ref/source/dat/descript/gods.txt @@ -76,7 +76,7 @@ Zin grants followers the ability to preach to the unenlightened masses. When hun %%%% The Shining One powers -Followers will gain use of a divine shield to protect them in battle. Later, they can hurl blasts of cleansing flame that are particularly effective against unholy creatures, and, eventually, they can ask the Shining One to send them help in the form of a Daeva, a powerful divine being. The Shining One may occasionally directly intervene to save a follower's life. With growing piety the Shining One will protect a follower's life force. +Followers will gain use of a divine shield to protect them in battle. Later, they can hurl blasts of cleansing flame that are particularly effective against unholy creatures, and, eventually, they can ask the Shining One to send them help in the form of an Angel or Daeva, both powerful divine beings. The Shining One may occasionally directly intervene to save a follower's life. With growing piety the Shining One will protect a follower's life force. %%%% Kikubaaqudgha powers diff --git a/crawl-ref/source/dat/descript/monsters.txt b/crawl-ref/source/dat/descript/monsters.txt index 8ee5d9cf65..dd0fbf0a69 100644 --- a/crawl-ref/source/dat/descript/monsters.txt +++ b/crawl-ref/source/dat/descript/monsters.txt @@ -14,7 +14,7 @@ A lanky warrior, she moves at a great pace and carries an exotic weapon. %%%% Angel -A divine agent of Zin, it is a towering winged figure of unnatural beauty with an aura of brilliant white light. +A divine agent of the Shining One, it is a towering winged figure of unnatural beauty with an aura of brilliant white light. %%%% Antaeus diff --git a/crawl-ref/source/enum.h b/crawl-ref/source/enum.h index 367da2badb..c8a8c8bae0 100644 --- a/crawl-ref/source/enum.h +++ b/crawl-ref/source/enum.h @@ -58,7 +58,7 @@ enum ability_type ABIL_ZIN_SANCTUARY, ABIL_TSO_DIVINE_SHIELD = 120, // 120 ABIL_TSO_CLEANSING_FLAME, - ABIL_TSO_SUMMON_DAEVA, // 122 + ABIL_TSO_SUMMON_DIVINE_WARRIOR, // 122 ABIL_KIKU_RECALL_UNDEAD_SLAVES = 130, // 130 ABIL_KIKU_ENSLAVE_UNDEAD = 132, // 132 ABIL_KIKU_INVOKE_DEATH, // 133 diff --git a/crawl-ref/source/makeitem.cc b/crawl-ref/source/makeitem.cc index 181eaa3d68..9f9c55c98f 100644 --- a/crawl-ref/source/makeitem.cc +++ b/crawl-ref/source/makeitem.cc @@ -3439,16 +3439,11 @@ static item_make_species_type _give_weapon(monsters *mon, int level, item.base_type = OBJ_WEAPONS; item.colour = WHITE; // forced by force_item above {dlb} - set_equip_desc(item, ISFLAG_GLOWING); - if (one_chance_in(3)) - { - item.sub_type = (one_chance_in(3) ? WPN_GREAT_MACE - : WPN_MACE); - set_item_ego_type(item, OBJ_WEAPONS, SPWPN_HOLY_WRATH); - } - else - item.sub_type = WPN_LONG_SWORD; + item.sub_type = (one_chance_in(4) ? WPN_GREAT_MACE + : WPN_MACE); + set_equip_desc(item, ISFLAG_GLOWING); + set_item_ego_type(item, OBJ_WEAPONS, SPWPN_HOLY_WRATH); item.plus = 1 + random2(3); item.plus2 = 1 + random2(3); break; diff --git a/crawl-ref/source/mon-data.h b/crawl-ref/source/mon-data.h index 006fb3e48d..c2c9b6766f 100644 --- a/crawl-ref/source/mon-data.h +++ b/crawl-ref/source/mon-data.h @@ -1635,7 +1635,8 @@ static monsterentry mondata[] = { M_FIGHTER | M_FLIES | M_SPELLCASTER | M_SEE_INVIS | M_SPEAKS, MR_RES_POISON | MR_RES_ELEC, 0, 10, MONS_ANGEL, MONS_ANGEL, MH_HOLY, -8, - { {AT_HIT, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK }, + { {AT_HIT, AF_PLAIN, 25}, {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, + AT_NO_ATK }, { 12, 6, 5, 0 }, 10, 20, MST_ANGEL, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT, I_HIGH, HT_LAND, 15, DEFAULT_ENERGY, MONUSE_WEAPONS_ARMOUR, SIZE_MEDIUM @@ -1646,7 +1647,7 @@ static monsterentry mondata[] = { M_FIGHTER | M_LEVITATE | M_SPELLCASTER | M_SEE_INVIS | M_SPEAKS, MR_RES_POISON, 0, 12, MONS_ANGEL, MONS_DAEVA, MH_HOLY, -8, - { {AT_HIT, AF_PLAIN, 25}, {AT_HIT, AF_PLAIN, 10}, {AT_HIT, AF_PLAIN, 10}, + { {AT_HIT, AF_PLAIN, 25}, {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK }, { 14, 6, 5, 0 }, 10, 13, MST_DAEVA, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT, I_HIGH, diff --git a/crawl-ref/source/mon-util.cc b/crawl-ref/source/mon-util.cc index b2f66d5ba8..8dd9584afe 100644 --- a/crawl-ref/source/mon-util.cc +++ b/crawl-ref/source/mon-util.cc @@ -1333,6 +1333,7 @@ int mons_res_negative_energy(const monsters *mon) || mon->type == MONS_SHADOW_DRAGON || mon->type == MONS_DEATH_DRAKE // TSO protects his warriors' life force + || mon->type == MONS_ANGEL || mon->type == MONS_DAEVA) { return (3); // to match the value for players diff --git a/crawl-ref/source/religion.cc b/crawl-ref/source/religion.cc index 5fa3d994da..73951bafe1 100644 --- a/crawl-ref/source/religion.cc +++ b/crawl-ref/source/religion.cc @@ -3543,7 +3543,7 @@ static bool _tso_retribution() for (int i = 0; i < how_many; ++i) { if (create_monster( - mgen_data::hostile_at(MONS_DAEVA, + mgen_data::hostile_at(coinflip() ? MONS_ANGEL : MONS_DAEVA, you.pos(), 0, 0, true, god)) != -1) { success = true; diff --git a/crawl-ref/source/spells2.cc b/crawl-ref/source/spells2.cc index 06127f3041..a59028742a 100644 --- a/crawl-ref/source/spells2.cc +++ b/crawl-ref/source/spells2.cc @@ -1640,7 +1640,7 @@ static bool _summon_holy_being_wrapper(int pow, god_type god, return (true); } -// Zin sends an angel for a follower. +// TSO sends an angel for a follower. bool summon_guardian(int pow, god_type god, bool quiet) { return _summon_holy_being_wrapper(pow, god, MONS_ANGEL, quiet); |