| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
Ideally, we wouldn't be using special for unrands totally different from
how items of the same type do, but that's less trivial than this commit.
A centralised place to check for being an unrand should at least make such
a change easier.
|
| |
|
| |
|
|
|
|
|
|
|
| |
.cc, moving its contents into the new stepdown.cc and strings.cc.
(The latter also got many donations from libutil.h.)
Down with stuff! Up the new flesh!
|
| |
|
| |
|
|
|
|
| |
As part of a wider scheme to make draining temporary.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
For both player/monster casts, and for miscasts/hell effects (which were
still using the original even longer timer). The shorter startup should
allow it to more reliably get involved in fights when cast by the player,
and make it slightly harder (but probably still not very hard) to just
walk away from when cast by hostiles.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The message for 'animate dead' turning rotten corpses
(necrophages/ghouls) into skeletons would appear when
monsters cast the spell, even if the corpse wasn't in
LOS. It's only intended to explain to the *player* why
they're not getting a zombie, so it's probably simpler
to just not print it for monster animate dead at all.
It will still print once for every applicable corpse,
which isn't ideal. Not sure how to fix it, though -
the relevant code is also, appropriately, pretty rotten...
|
| |
|
|
|
|
| |
Or of any other monster with M_NO_SKELETON.
|
|
|
|
|
|
|
|
|
| |
A good deal of functions move to the two new files, mon-poly and
mon-message. Of the others, some go to where they are used, some to
mon-util, and a few are made member methods of monster.
This probably breaks Xcode compilation, and I'm not able to test
the changes I made to MSVC that will (hopefully) keep it working.
|
|
|
|
| |
Also when there are too many monsters on the level, etc.
|
|
|
|
|
|
|
|
|
| |
Summon Swarm tries repeatedly to find a bug that your god doesn't hate.
It tries so hard that it never, ever stops trying. This commit limits
that exuberance.
[Committer's note: adjusted the logic a bit, and increased the loop bounds
from 20 to 100. -nfm]
|
|
|
|
|
|
|
| |
Sources of restore abilities are less common now and the effect can no
longer be completely blocked. The int drain is now 1d2 when it occurrs
with no sustain abilities and 1 when it occurrs with sustain
abilities; the chance of int drain is still fixed at 80%.
|
|
|
|
|
| |
Don't keep the old brand on Tukima's, make ?bw make sense, and don't
allow rebranding a blessed weapon (this includes with the scroll).
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
This reverts commit 7e81480cda18144ff185f5248639a072b654deff.
Turns out I missed some calls to random_choose_weighted(), this change
might not even be worth doing.
|
|
|
|
| |
For consistency with random_choose().
|
|
|
|
|
|
|
| |
Since it now makes simulacra from every corpse in the caster's LOS,
for each corpse it uses a random number with a max that's half as many
max chunks that could have been made from the corpse. It also leaves
skeletons for the appropriate monsters.
|
|
|
|
|
|
|
|
|
| |
It now behaves like animate skeleton, creating simulacra from the top
corpse the player is standing on and leaving a skeleton (but not a
hide) when appropriate. The number created is based on how many chunks
would be produced, so the result is the same as butchering a corpse
and wielding all the resulting chunks under the old version of the
spell.
|
| |
|
|
|
|
|
|
|
| |
Slow melee-only monsters are awful, and nobody objected to removing
these. Next to be removed: elephant slugs.
Somebody might want to look over my vault edits, as ususal.
|
|
|
|
| |
And tweak a comment.
|
|
|
|
|
| |
Make Tukima's Dance weapons (almost) only attack their
original owner. Removes the last reason to do fiddly weapon-swapping.
|
|
|
|
|
|
|
|
| |
(Committer's note: The old Tukima's Dance was fiddly and
not well-liked. Changing it into something hexier seemed
like a popular & reasonable idea.
I refactored the spell code & fixed a few small issues.)
|
|
|
|
|
|
|
| |
Because it's very common that corpses will be hidden by items above
them, especially now that that's guaranteed if there are any items
above them, the 'z' behaviour it made was too restrictive.
This reverts commit f040398a199a9f2bda755c0802287558edecba2e.
|
|
|
|
|
|
|
|
|
|
|
| |
Item inventory weights (based on item mass) generally don't lead to
meaningful decisions that justify the inventory juggling and interface
problems that come from having burden states. The 52-slot limit is a
better system for limiting inventory and providing inventory-related
decisions because it's not so fine-grained and doesn't require the
player to examine weights for each slot. Work is ongoing to improve
the slot system by consolidating food types and handling strategic
consumables in a different way.
|
|
|
|
|
|
| |
Sausages, snozzcumbers, oranges, bananas, lemons, pears, apples,
apricots, chokos, rambutans, lychees, strawberries, grapes, sultanas,
and cheese.
|
|
|
|
|
|
|
|
|
|
| |
If there's a visible corpse nearby, the behaviour is the same. If
there are no items, 'z' should not waste time/MP, while you can
still force a cast with 'Z', so that you can animate corpses that
are below other items and you can't see with ^X.
Sadly, this doesn't really work for Yred since there's no way to
force a use of an ability the way there is with a spell.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
It was fairly fiddly and unclear in its mechanics, and elemental
summoning is now covered by the elemental evokers (and possibly the storm
god at some point in the future too)· Moved Summon Forest from the book
of the Warp to replace it in the book of Summonings, and added Dispersal
to replace it in the book of Wizardry.
|
|
|
|
|
|
| |
They were almost identical to polar bears, which at least had the
distinguishing (from black bears) to swim and be at home in an ice
cave.
|
|
|
|
|
|
|
|
|
| |
Fiery monsters generally can still be summoned and won't turn hostile,
though (through Dragon's Call, Shadow Creatures, the various demon
summoning spells). Handling fiery monsters in player_angers_monster()
is a possibility but would end up affecting a large number of summoning
spells for pretty dubious benefit, and possibly the conduct isn't worth
keeping anyway.
|
|
|
|
|
|
|
| |
Touches a lot of files since their #includes have to be edited.
(Pushing now since it shouldn't break anything and keeping it updated
is nasty.)
|
|
|
|
| |
Oops.
|
| |
|
|
|
|
| |
This avoids displaying a unique-style name caption in local tiles.
|
| |
|
|
|
|
|
|
|
|
| |
(simmarine)
It was finding corpses that were underwater and marking them as possibly
animatable, but then never actually allowing those to be animated (for
non-swimming species).
|
|
|
|
| |
Instead of 99.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The reduced CBL duration was so low that the ball lightning would
frequently explode before even being able to reach targets in your
LoS (or before you could step away, even if you did so immediately
on open ground). This commit restores the old duration and makes
a few other changes to reduce power level instead:
Ball lightning conjured with less spellpower explode for less damage
(and their explosion is less likely to be radius 3), the number of
ball lightning conjured per cast has been reduced (and the variance
decreased somewhat), and ball lightning which leave the player's
line of sight immediately dissipate without exploding (so that it
is no longer possible to aim them at things you cannot see and cannot
harm you). The aim is that this will make it impractical against
monsters out of sight, while being less awkward against those IN
sight (and less likely to immediately engulf the caster before being
able to reach anything else).
|
|
|
|
|
|
|
| |
The main function of the code stripped out seems to have been to
buggily fail to place ball lightnings a significant percentage of
the time - otherwise this briefer version appears to function
basically the same.
|