summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-10-09 16:45:55 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-10-09 16:45:55 +0000
commitbf1c223c6c1d0909443249be9f60c9a4aabfcd7d (patch)
tree9a315d5e9a861734ecd83dc7fae8c859524f2aa0
parent49d51f5e3057f2d209d9dd96e55b68d46ed97cd9 (diff)
downloadcrawl-ref-bf1c223c6c1d0909443249be9f60c9a4aabfcd7d.tar.gz
crawl-ref-bf1c223c6c1d0909443249be9f60c9a4aabfcd7d.zip
Trunk->0.3 merge: branded weapon/armour is always visibly special.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup-0.3@2399 c06c8d41-db1a-0410-9941-cceddc491573
-rw-r--r--crawl-ref/source/makeitem.cc31
1 files changed, 15 insertions, 16 deletions
diff --git a/crawl-ref/source/makeitem.cc b/crawl-ref/source/makeitem.cc
index aa20fdc9d4..c44e406385 100644
--- a/crawl-ref/source/makeitem.cc
+++ b/crawl-ref/source/makeitem.cc
@@ -2214,12 +2214,10 @@ int items( int allow_uniques, // not just true-false,
}
// if not given a racial type, and special, give shiny/runed/etc desc.
- if (get_equip_race(mitm[p]) == 0
- && get_equip_desc(mitm[p]) == 0
- && (((is_random_artefact(mitm[p])
- || get_armour_ego_type( mitm[p] ) != SPARM_NORMAL)
- && !one_chance_in(10))
- || (mitm[p].plus != 0 && one_chance_in(3))))
+ if (get_equip_desc(mitm[p]) == 0
+ && (is_random_artefact(mitm[p])
+ || get_armour_ego_type( mitm[p] ) != SPARM_NORMAL
+ || (mitm[p].plus != 0 && !one_chance_in(3))))
{
switch (random2(3))
{
@@ -2900,19 +2898,15 @@ void init_rod_mp(item_def &item)
static bool weapon_is_visibly_special(const item_def &item)
{
const int brand = get_weapon_brand(item);
- const bool visibly_branded =
- brand != SPWPN_NORMAL && brand != SPWPN_DISTORTION;
+ const bool visibly_branded = brand != SPWPN_NORMAL;
- return (((is_random_artefact(item) || visibly_branded)
- && !one_chance_in(10))
+ return ((is_random_artefact(item) || visibly_branded)
|| ((item.plus != 0 || item.plus2 != 0)
- && one_chance_in(3)
- && brand != SPWPN_DISTORTION))
+ && !one_chance_in(3)))
&& item.sub_type != WPN_CLUB
&& item.sub_type != WPN_GIANT_CLUB
&& item.sub_type != WPN_GIANT_SPIKED_CLUB
- && get_equip_desc(item) == 0
- && get_equip_race(item) == 0;
+ && get_equip_desc(item) == 0;
}
static void give_monster_item(
@@ -3941,14 +3935,19 @@ void give_armour(monsters *mon, int level)
case MONS_DRACONIAN_ZEALOT:
case MONS_DRACONIAN_KNIGHT:
case MONS_TIAMAT:
- case MONS_ORC_WIZARD:
case MONS_WIZARD:
- case MONS_BLORK_THE_ORC:
item_race = MAKE_ITEM_NO_RACE;
mitm[bp].base_type = OBJ_ARMOUR;
mitm[bp].sub_type = ARM_ROBE;
break;
+ case MONS_ORC_WIZARD:
+ case MONS_BLORK_THE_ORC:
+ item_race = MAKE_ITEM_ORCISH;
+ mitm[bp].base_type = OBJ_ARMOUR;
+ mitm[bp].sub_type = ARM_ROBE;
+ break;
+
case MONS_BORIS:
level = MAKE_GOOD_ITEM;
// fall-through