| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
The item squashing would not happen outside this conditional because
acquirement quality items have too high a level to be squashed. (This
was also the original behavior)
|
| |
|
|
|
|
|
| |
They were only used in one place, and the relevant code was moved to
that one place in the previous commit.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows us to have a consistent and logical ordering of branches
without requiring the branch enum itself to be reordered (which could
have save compatibility implications). The new ordering of branches just
moves Depths to the place in the ordering that it already is planned to
go on the next major save compat bump, but other changes are possible,
if desired. All places in the code that iterate over branches have been
updated to use the new iterator except for code dealing with save files,
which still uses enum order, so that we can change the display ordering
without affecting saves.
|
|
|
|
|
|
|
| |
.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!
|
|
|
|
|
|
|
|
|
| |
So they'll actually place.
We should look more closely into *why* it fails to connect and whether
that can/should be fixed; or, alternatively, whether we should make
abyss vaults all no_exits. For now, this stopgap at least leaves us in
the same situation we were in before the #8833 crashes began.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This doesn't solve the underlying problem, whatever it is, but it should
stop games from reaching an unplayable state.
|
|
|
|
|
|
|
| |
There's already a ::connect call after build_postvault_level, so this is
completely meaningless logic.
This reverts commit a02710520930951c3f3b6685483d157d3b32bfcb.
|
|
|
|
|
| |
This should cause fewer issues with vaults not connecting to the rest of
the level.
|
|
|
|
|
|
|
| |
If the player specified a minivault with &P, try to build a level
containing that minivault. If the level doesn't try to place minivaults
(encompass levels) there is no effect, but otherwise the level will be
vetoed if the requested vault did not place.
|
| |
|
|
|
|
|
| |
The back-compat code was hardly needed when it was added,
much less now.
|
|
|
|
|
|
| |
The remaining problem behind this longstanding bug was that the layout
overwrote the colour, height, tiles, etc. of all squares---even ones that
were already placed by the primary vault.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
In an attempt to clarify its new, more restricted behaviour.
|
|
|
|
|
|
|
|
| |
The -objstat command-line option will generate iterations of the given
levels, compiling stats on every item and monster generated, and
average the results over the iterations. It's only available in debug
builds and uses the same map specification format as -mapstat. The
default number of iterations is 100.
|
|
|
|
|
|
| |
The command-line option is -mapstat, so the non-static functions use
the prefix mapstat_ instead of mapgen_ now for consistency. The static
functions and variables have had their mg_ prefixes removed.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
I'm not sure why this extra behaviour was still around.
|
| |
|
| |
|
|
|
|
|
| |
Ghostly Flame spectrals, and Crypt level-gen zombies. For the latter, also
respect M_NO_ZOMBIE just as we respect M_NO_SKELETON.
|
|
|
|
|
|
|
| |
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().
|
|
|
|
|
|
| |
The complaints against the branch are well documented, mostly stating
Dancing Weapons are awful enemies and the Hall of Blades is filled with
them.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
It was moving the wrong item to the top of the cell - I wanted
item_def::index(), not item_def::link.
Also, if the gold was the second item on the cell, it would get missed, and
if more than one identical item was being generated on the same tile before
and after the gold, it could also get missed.
|
|
|
|
| |
Should catch the crash in #8584.
|
|
|
|
|
| |
If the shortest path is a straight line, it'll still be a straight line,
but more diagonal passageways should look somewhat more varied now.
|
|
|
|
|
|
| |
There's some code duplication here between _vault_can_use_layout and
_map_matches_layout_type which should probably go away in the future, if
we can figure out a good way to do so.
|
|
|
|
|
|
|
|
| |
Based on a note about wanting corrupted_temple to support a variable
number of altars; it can now do 6-9. (I left the lower limit at 6
because that's currently the smallest any temple is.)
Inspired by a couple of temple designs I'll probably add shortly.
|
|
|
|
|
|
|
|
|
|
|
| |
There have been so many problems with minivaults not having exits that
this is an easier solution than the alternative.
You're still allowed to explicitly place exits, of course, in which case
floating exits go away.
There are a couple of other small tweaks to the level documentation here
as well.
|
| |
|
| |
|
| |
|
|
|
|
| |
This fixes all the instances caught by unbrace.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In particular, the potion and shop lists don't need to be generated in
advance of using the ability altogether; they only last as long as the
ability menu is present (thus they're still stored, as if you get a HUP
in the middle of it we want to present the same choices).
Since shop prices no longer depend on the generated shops, item
generation for the shops is left to the shops. (If we want to preserve
their item quality, we'll need a level_number paramter in shop specs,
but I doubt players will notice the difference at all.)
RIP item_def::to_spec; you will not be missed.
|
|
|
|
|
|
|
|
|
|
|
| |
Must still be on a level that allows shops, for now; I'm open to
changing this.
No restrictions on the number of shops called per level, either.
There's some support code left here in case people still have games in
progress on the branch; when it hits trunk the support code will go
away.
|
|
|
|
|
| |
Fix other item being detected in place of gold (#8499); don't show the
message for it (elliptic).
|
|
|
|
|
|
|
|
| |
* Properly unmark off-level shops (#8498).
* Don't deduct bribes for vetoed levels (if, say, Elf:3 vetoed a lot
you'd notice your bribe running out immediately on entering the
level).
|
| |
|