From cfdb6e14f51f38e104444acf22e17706fcda104d Mon Sep 17 00:00:00 2001 From: Darshan Shaligram Date: Tue, 29 Dec 2009 17:56:26 +0530 Subject: Add merfolk javelineers to the Shoals, add descriptions for the three new merfolk types. --- crawl-ref/source/mon-gear.cc | 49 +++++++++++++++++++++++++++----------------- 1 file changed, 30 insertions(+), 19 deletions(-) (limited to 'crawl-ref/source/mon-gear.cc') diff --git a/crawl-ref/source/mon-gear.cc b/crawl-ref/source/mon-gear.cc index a012972cc3..393d4680b7 100644 --- a/crawl-ref/source/mon-gear.cc +++ b/crawl-ref/source/mon-gear.cc @@ -412,14 +412,6 @@ static item_make_species_type _give_weapon(monsters *mon, int level, item.sub_type = WPN_LONGBOW; break; - case MONS_MERFOLK_AQUAMANCER: - item_race = MAKE_ITEM_NO_RACE; - item.base_type = OBJ_WEAPONS; - item.sub_type = WPN_SABRE; - if (coinflip()) - level = MAKE_GOOD_ITEM; - break; - case MONS_DEEP_ELF_ANNIHILATOR: case MONS_DEEP_ELF_CONJURER: case MONS_DEEP_ELF_DEATH_MAGE: @@ -593,11 +585,8 @@ static item_make_species_type _give_weapon(monsters *mon, int level, case MONS_MERFOLK_IMPALER: 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; @@ -611,6 +600,23 @@ static item_make_species_type _give_weapon(monsters *mon, int level, } break; + + case MONS_MERFOLK_AQUAMANCER: + item_race = MAKE_ITEM_NO_RACE; + item.base_type = OBJ_WEAPONS; + item.sub_type = WPN_SABRE; + if (coinflip()) + level = MAKE_GOOD_ITEM; + break; + + case MONS_MERFOLK_JAVELINEER: + item_race = MAKE_ITEM_NO_RACE; + item.base_type = OBJ_WEAPONS; + item.sub_type = WPN_SPEAR; + if (!one_chance_in(3)) + level = MAKE_GOOD_ITEM; + break; + case MONS_MERFOLK: if (one_chance_in(3)) { @@ -1057,14 +1063,13 @@ static void _give_ammo(monsters *mon, int level, qty = random_range(4, 7); break; - case MONS_MERFOLK_IMPALER: - // Gladiators rarely get javelins. - if (one_chance_in(4)) - { - weap_class = OBJ_MISSILES; - weap_type = MI_JAVELIN; - qty = random_range(3, 8, 2); - } + case MONS_MERFOLK_JAVELINEER: + weap_class = OBJ_MISSILES; + weap_type = MI_JAVELIN; + item_race = MAKE_ITEM_NO_RACE; + qty = random_range(9, 23, 2); + if (one_chance_in(3)) + level = MAKE_GOOD_ITEM; break; case MONS_MERFOLK: @@ -1391,6 +1396,12 @@ void give_armour(monsters *mon, int level) 0); break; + case MONS_MERFOLK_JAVELINEER: + item_race = MAKE_ITEM_NO_RACE; + item.base_type = OBJ_ARMOUR; + item.sub_type = ARM_LEATHER_ARMOUR; + break; + case MONS_ANGEL: case MONS_SIGMUND: case MONS_WIGHT: -- cgit v1.2.3-54-g00ecf