diff options
author | Darshan Shaligram <dshaligram@users.sourceforge.net> | 2009-12-29 04:00:08 +0530 |
---|---|---|
committer | Darshan Shaligram <dshaligram@users.sourceforge.net> | 2009-12-29 04:00:08 +0530 |
commit | 5fccd300ac36d6689cb864ec3f128e49427f170f (patch) | |
tree | 2b5de4d4dd9a12f9602c26c877c3db21e7b6ecef /crawl-ref/source/mon-gear.cc | |
parent | 6af92e2651be67206e4f153f73adeaa1e16f0b40 (diff) | |
download | crawl-ref-5fccd300ac36d6689cb864ec3f128e49427f170f.tar.gz crawl-ref-5fccd300ac36d6689cb864ec3f128e49427f170f.zip |
Merfolk gladiators join the Shoals party.
Diffstat (limited to 'crawl-ref/source/mon-gear.cc')
-rw-r--r-- | crawl-ref/source/mon-gear.cc | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/crawl-ref/source/mon-gear.cc b/crawl-ref/source/mon-gear.cc index 01edc35951..9f284736d2 100644 --- a/crawl-ref/source/mon-gear.cc +++ b/crawl-ref/source/mon-gear.cc @@ -582,6 +582,27 @@ static item_make_species_type _give_weapon(monsters *mon, int level, } break; + case MONS_MERFOLK_GLADIATOR: + item_race = MAKE_ITEM_NO_RACE; + item.base_type = OBJ_WEAPONS; + // Weapon types are not strictly sorted by quality. This is intentional. + item.sub_type = random_choose_weighted(100, WPN_TRIDENT, + 45, WPN_BARDICHE, + 15, WPN_DEMON_TRIDENT, + 15, WPN_HALBERD, + 0); + if (coinflip()) + level = MAKE_GOOD_ITEM; + else if (coinflip()) + { + // Per dpeg request :) + item.special = SPWPN_REACHING; + item.plus = random_range(-1, 6, 2); + item.plus2 = random_range(-1, 5, 2); + force_item = true; + } + break; + case MONS_MERFOLK: if (one_chance_in(3)) { @@ -1028,6 +1049,16 @@ static void _give_ammo(monsters *mon, int level, qty = random_range(4, 7); break; + case MONS_MERFOLK_GLADIATOR: + // Gladiators rarely get javelins. + if (one_chance_in(4)) + { + weap_class = OBJ_MISSILES; + weap_type = MI_JAVELIN; + qty = random_range(3, 8, 2); + } + break; + case MONS_MERFOLK: if (!one_chance_in(3)) { @@ -1342,6 +1373,16 @@ void give_armour(monsters *mon, int level) break; } + case MONS_MERFOLK_GLADIATOR: + item_race = MAKE_ITEM_NO_RACE; + item.base_type = OBJ_ARMOUR; + item.sub_type = random_choose_weighted(100, ARM_ROBE, + 60, ARM_LEATHER_ARMOUR, + 5, ARM_TROLL_LEATHER_ARMOUR, + 5, ARM_STEAM_DRAGON_ARMOUR, + 0); + break; + case MONS_ANGEL: case MONS_SIGMUND: case MONS_WIGHT: |