| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
Sometimes the shortest path that a monster could see to its target
would follow a route the player themselves couldn't see, which would
cause them to oscillate back and forth at the edge of sight, moving
away and then immediately returning once they left your view. Now
they should elect to take longer paths that they can actually follow.
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clinging might be a minor feature, but it's a distinguishing one, it's thematic
and it's working quite well.
Player/monster symmetry has never been a goal, so it seems dubious to invoke it
as the reason to throw away all the work that has been put into clinging. We
can always say that the player turns into a different kind of spider which is
unable to cling for some reason.
This reverts commit bdc56382eacf7af1b2330dc6444916d368741fec.
This reverts commit d689486464fcaaac025a6f469ab69674a2f4d173.
This reverts commit 1addaaf8ee92de5060fdb436f93251843abd2035.
|
|
|
|
| |
It degenerated away with clinging removal.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Preventing it isn't very interseting, and allowing it makes the code much simpler.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, monsters would only open doors if they were straight on
the way to their target.
E.g.:
@#g
.+.
g won't open the door if its target is @. This can be reproduced for
example as follows (eg Sprint 1 start):
.1#3.
..+.2
..###
Stand at one, open door, place monster at 2, close door.
The monster will move to 3 and wait there until you open
the door.
I'm not sure why monsters didn't fall back to pathfinding if they
couldn't get to you directly.
These changes also unify some monster traversability checks between
mon-pathfind and mon-act.
|
| |
|
| |
|
|
|