diff options
author | Nicholas Feinberg <pleasingfung@gmail.com> | 2014-07-13 00:10:30 -0700 |
---|---|---|
committer | Nicholas Feinberg <pleasingfung@gmail.com> | 2014-07-13 00:33:57 -0700 |
commit | cfb61905c56eeeb599c04d43f7be9efdaad15e89 (patch) | |
tree | 92033bdb46857585911d6f80228a3583455baaba /crawl-ref/source/itemprop.cc | |
parent | 9b6b733bccd0de2af35eb6c28e94e4708a92004d (diff) | |
download | crawl-ref-cfb61905c56eeeb599c04d43f7be9efdaad15e89.tar.gz crawl-ref-cfb61905c56eeeb599c04d43f7be9efdaad15e89.zip |
Rebalance crossbows
Again as a result of the ranged weapons rebalance, crossbows
needed to change. The analogy here is long blades' to bows'
m&f; better return on skill investment & a higher power cap,
but rarer.
Hand crossbows are added as a starting type, "something like an
armour-piercing dagger"; crossbows are upgraded to arbalests
(a little worse than a glaive), and a new rare triple crossbow
type is added on the top end (a little worse than a bardiche,
though with a lower skill cost.) Please note that the triple
crossbow historically existed & is extremely verisimilitudinous.
Hellfire is now an arbalest, and Sniper is now a triple crossbow
(well, a "heavy crossbow", since it has mindelay of 27 instead of
22, and since I didn't want to have to change the sprite).
All crossbows have a mindelay of at least 1.0; this is an attempt
to differentiate them. Possibly something more ambitious will be
attempted in 1.6, but this is a first step.
Diffstat (limited to 'crawl-ref/source/itemprop.cc')
-rw-r--r-- | crawl-ref/source/itemprop.cc | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/crawl-ref/source/itemprop.cc b/crawl-ref/source/itemprop.cc index cee9fbfc28..f2d52efc05 100644 --- a/crawl-ref/source/itemprop.cc +++ b/crawl-ref/source/itemprop.cc @@ -345,14 +345,19 @@ static const weapon_def Weapon_prop[] = { WPN_HUNTING_SLING, "hunting sling", 5, 2, 12, 20, 1, SK_SLINGS, SIZE_LITTLE, SIZE_LITTLE, MI_STONE, DAMV_NON_MELEE, 10 }, - { WPN_GREATSLING, "greatsling", 8, -1, 14, 20, 1, + { WPN_GREATSLING, "greatsling", 8, -1, 14, 30, 1, SK_SLINGS, SIZE_LITTLE, SIZE_SMALL, MI_STONE, DAMV_NON_MELEE, 2 }, - - { WPN_CROSSBOW, "crossbow", 5, 4, 15, 150, 8, - SK_CROSSBOWS, SIZE_LITTLE, NUM_SIZE_LEVELS, MI_BOLT, + { WPN_HAND_CROSSBOW, "hand crossbow", 11, 5, 15, 50, 5, + SK_CROSSBOWS, SIZE_LITTLE, SIZE_LITTLE, MI_BOLT, + DAMV_NON_MELEE, 10 }, + { WPN_ARBALEST, "arbalest", 20, 2, 19, 150, 8, + SK_CROSSBOWS, SIZE_LITTLE, NUM_SIZE_LEVELS, MI_BOLT, DAMV_NON_MELEE, 10 }, + { WPN_TRIPLE_CROSSBOW, "triple crossbow", 24, 0, 22, 250, 9, + SK_CROSSBOWS, SIZE_SMALL, NUM_SIZE_LEVELS, MI_BOLT, + DAMV_NON_MELEE, 2 }, { WPN_SHORTBOW, "shortbow", 8, 1, 13, 90, 2, SK_BOWS, SIZE_LITTLE, NUM_SIZE_LEVELS, MI_ARROW, @@ -380,7 +385,7 @@ static const missile_def Missile_prop[] = { MI_NEEDLE, "needle", 0, 1, false }, { MI_STONE, "stone", 2, 6, true }, { MI_ARROW, "arrow", 0, 5, false }, - { MI_BOLT, "bolt", 9, 5, false }, + { MI_BOLT, "bolt", 0, 5, false }, { MI_LARGE_ROCK, "large rock", 20, 600, true }, { MI_SLING_BULLET, "sling bullet", 5, 4, false }, { MI_JAVELIN, "javelin", 10, 80, true }, @@ -1252,10 +1257,10 @@ int weapon_rarity(int w_type) case WPN_LONG_SWORD: case WPN_MORNINGSTAR: case WPN_WAR_AXE: + case WPN_HAND_CROSSBOW: return 7; case WPN_BATTLEAXE: - case WPN_CROSSBOW: case WPN_GREAT_SWORD: case WPN_SCIMITAR: case WPN_TRIDENT: @@ -1264,6 +1269,7 @@ int weapon_rarity(int w_type) case WPN_GLAIVE: case WPN_HALBERD: case WPN_BLOWGUN: + case WPN_ARBALEST: return 5; case WPN_BROAD_AXE: @@ -1290,6 +1296,7 @@ int weapon_rarity(int w_type) case WPN_EXECUTIONERS_AXE: case WPN_QUICK_BLADE: case WPN_CLAYMORE: + case WPN_TRIPLE_CROSSBOW: case WPN_DEMON_WHIP: case WPN_DEMON_BLADE: case WPN_DEMON_TRIDENT: |