| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This function was misleadingly named (it only provided the skill
used for melee weapons, not ranged weapons), and incomplete;
code along the lines of "is_ranged_weapon(*it) ? range_skill(*it)
: weapon_skill(*it)" was scattered in about half a dozen different
functions. I've corrected both of those problems (renaming weapon_
skill() to melee_skill() and adding item_weapon_skill()), and also
possibly fixed two bugs in the process - an l_you.cc function that
claimed to provide the skill used for the starting weapon (but
actually only gave the melee skill), and unrand creation code that
checked if a potential unrand swap used the same (melee) skill as
the weapon type being generated.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Slings numbers (along with the other launchers') needed to be
rebalanced after the recent ranged combat rework. The approach
here is essentially analogous to the staves skill; good return
for xp investment, but a limited power cap, especially if you
don't find the rare upgrade weapon type.
Slings renamed to 'hunting slings' and upgraded from 2->5 base
damage (and 12 base delay); new, rare "greatsling" added, with
8 base damage and 14 base delay. Punk upgraded to the latter
type.
Thanks to Lasty for providing a baseline math suggestion!
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Toting around an unbranded weapon just to be able to swap to it
is no fun, and not even that much more of a difficulty; maybe it
just means getting pain out takes 0.7 more turns or so. You still
can't overwrite artefacts, of course.
|
|
|
|
|
|
|
| |
Elec and venom launchers already use the same brands, and with ranged
code more similar to melee code this change actually simplifies most
code. There should be no gameplay change though some weird brand picking
code for launchers was refactored, which might have some effect.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In its previous state, it was fiddly, misleading, and
kind of overpowered. So:
Raise it to level 2 (& remove it from Cantrips, replacing
it with Corona). Remove the stacking-duration effect &
increase the initial duration. Set damage of all hits to
0, and make the first successful (confusing) hit end the
effect.
This should still be useful, but in a level 2 kind of way.
We'll see how that pans out.
|
|
|
|
|
| |
Sometimes, they're there to emphasize a break between two sections of code,
which is good. In a majority of cases, though, they're just inconsistent.
|
| |
|
|
|
|
|
|
|
|
|
| |
Makes it more easily and obviously cancellable, and allows cancelling the
scroll without spending a turn and losing it (if it was already
identified). Doesn't use the same selection menus as enchant armour,
identify and recharging - since it tends to show up much later it'd almost
always be known anyway (and the point here is to make it harder to
accidentally remove a brand you want).
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I had to rename distance() (in coord.h) to distance2() because it conflicts
with the STL function to compare 2 iterators. Not a bad change given how it
returns the square of the distance anyway.
I also had to rename the message global variable (in message.cc) to buffer.
I tried to fix and improve the coding style has much as I could, but I
probably missed a few given how huge and tedious it is.
I also didn't touch crawl-gdb.py, and the stuff in prebuilt, rltiles/tool
and util/levcomp.*, because I have no clue about those.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
As usual, lots of the changes to master's fight.cc were to things that are
in our melee_attack.cc, so were applied there instead.
Conflicts:
crawl-ref/source/fight.cc
crawl-ref/source/melee_attack.h
|
| |
| |
| |
| | |
definitions.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
crawl-ref/source/Makefile.obj
crawl-ref/source/dbg-scan.cc
crawl-ref/source/decks.cc
crawl-ref/source/describe.cc
crawl-ref/source/directn.cc
crawl-ref/source/evoke.cc
crawl-ref/source/fight.cc
crawl-ref/source/fight.h
crawl-ref/source/ghost.cc
crawl-ref/source/ghost.h
crawl-ref/source/item_use.cc
crawl-ref/source/items.cc
crawl-ref/source/map_knowledge.cc
crawl-ref/source/melee_attack.h
crawl-ref/source/mon-abil.cc
crawl-ref/source/mon-act.cc
crawl-ref/source/mon-stuff.cc
crawl-ref/source/monster.cc
crawl-ref/source/monster.h
crawl-ref/source/player.cc
crawl-ref/source/player.h
crawl-ref/source/shopping.cc
crawl-ref/source/spl-damage.cc
crawl-ref/source/spl-summoning.cc
crawl-ref/source/spl-transloc.cc
crawl-ref/source/stairs.cc
crawl-ref/source/stuff.cc
crawl-ref/source/tags.cc
crawl-ref/source/traps.cc
crawl-ref/source/xom.cc
|
| |
| |
| |
| |
| |
| |
| |
| | |
This avoids two interfaces for the same function, and is consistent with
player::arm_name() and the like.
Also, fix some inconsistencies with player transformations and
player::foot_name().
|
| | |
|
| |
| |
| |
| |
| | |
Like Tukima's Vorpal Blade which has long been gone, it has little to no
practical use.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a significant refactoring. All the spells now return a spret_type and
take a boolean which tells if the spell has actually failed.
Also some code clean up in _do_cast(). All spells have their own function now.
Also fix the following bugs:
* Properly abort fire storm if forced casting on a wall with '!'.
Also put a message for forced out of range casting (like cloud spells).
* Casting summon elemental on an invisible monster aborted with no cost.
* if a summoning spell aborts because create_monster fails, you don't lose a
turn. You still get a chance of miscast in this rare case.
* s2s, tukima and branding spells abort properly instead of consuming turn and
MP when player is not wielding appropriate object.
* s2s abort message when wielding a non-snakable.
|
| | |
|
| |
| |
| |
| |
| | |
It works on stones and sling bullets, so there's no reason it shouldn't
work on maces either.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It rolled either "vorpal for slicing/stabbing" or "vorpal for crushing",
doing nothing if the weapon was of the opposite type. And never working
for chopping, piercing ones and launchers.
Now it will do nothing only for crushing weapons of venom, and for launchers
of draining, distortion and pain.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
crawl-ref/source/actor.cc
crawl-ref/source/delay.cc
crawl-ref/source/directn.cc
crawl-ref/source/directn.h
crawl-ref/source/fight.cc
crawl-ref/source/files.cc
crawl-ref/source/mon-act.cc
crawl-ref/source/monster.cc
crawl-ref/source/mpr.h
crawl-ref/source/player.cc
crawl-ref/source/shopping.cc
|
| |
| |
| |
| |
| |
| |
| | |
"File:" is shown in your editor's status bar.
"Written by:" was used only for the first person who changed a file. We got
git for that now, and pre-DCSS history is so woefully inaccurate it doesn't
really matter.
|
|/ |
|
|
|
|
| |
(Yeah, this is such a common occurence...)
|
|
Remove spells1.* and spells2.*.
|