Commit Graph

4226 Commits

Author SHA1 Message Date
Derek S. Ray
7f03ee4216 Changes for Win32; update precompiled files
Also fix Orctown probabilities; fixed support for snprintf;
update Win32 makefile to allow level compiler use

Conflicts:
	win/win32/levstuff.mak
2015-03-20 15:14:31 +02:00
Derek S. Ray
b1835cc65d Swap out Frontier Town with Orctown 2015-03-20 15:09:51 +02:00
Pasi Kallinen
56699486a0 Catch up with post-343 lev_comp changes
- Iced pools vs. iced moats
- allow making map outer edges nonpasswall & nondiggable,
  so eg. xorns cannot be teleported there
2015-03-17 18:57:39 +02:00
Pasi Kallinen
b5dd0c1894 Make sokoban prize not depend on the map layout 2015-03-17 18:52:53 +02:00
Pasi Kallinen
c9d5bb9d68 Fix some level flags, sokoban premapping 2015-03-17 18:52:53 +02:00
Pasi Kallinen
79eb17a0a7 New level compiler: des-file changes 2015-03-17 18:52:49 +02:00
Pasi Kallinen
47bb9abace New level compiler: code changes 2015-03-17 18:52:42 +02:00
PatR
7912a566e5 some lint cleanup 2015-03-17 18:47:39 +02:00
PatR
d4467fc594 allow DEBUGFILES to be overridden via getenv()
If getenv("DEBUGFILES") yields a value then it takes precedence over
sysconf.DEBUGFILES or sys.c's #define DEBUGFILES.  (It probably should
only be controlled via environment since it is not a system-wide
attribute, but I haven't taken out the SYSCF handling for it.)
2015-03-17 18:47:38 +02:00
Derek S. Ray
b6ec0f066e finally remember to add the 'nh-' versions 2015-03-17 18:47:38 +02:00
nhmall
ae974e7a6d dungeoneers update March 16, 2015 2015-03-17 18:47:37 +02:00
PatR
105545172f fix #H3724 - gold pile stacking bug
Bug report included a pointer to a fix; this patch is a superset.
Gold pieces dropped on an altar by the player got their bknown flag set,
which is incorrect since bless/curse doesn't apply to coins.  If a
monster (in reported case, a slain temple priest) dropped gold there too
then the two stacks wouldn't merge.  For the normal !GOLDOBJ config, the
problem goes away as soon as the gold gets picked up.  I didn't test for
GOLDOBJ but think two inventory slots containing gold can result.

     The superset part is to not break agnostic conduct by dropping gold
on an altar since no information is revealed when doing that.

[This was one of the very last patches checked into the old cvs repository,
where the somewhat out of date message above was accidentally omitted.]
2015-03-17 18:47:37 +02:00
PatR
77dbb1080d free 'sysopt' strings upon termination 2015-03-17 18:47:36 +02:00
PatR
058299aa3a DEBUG/debugpline() fixup
* Replace variadic debugpline() with fixed argument debugpline0(str),
   debugpline1(fmt,arg), and so on so that C99 support isn't required;
 * showdebug() becomes a function rather than a macro and handles a
   bit more;
 * two debugpline() calls in light.c have been changed to impossible();
 * DEBUGFILES macro (in sys.c) can substitute for SYSCF's DEBUGFILES
   setting in !SYSCF configuration (I hope that's temporary).
2015-03-17 18:47:31 +02:00
Derek S. Ray
4c28a96b92 Some few updates/additions; clean up formatting 2015-03-17 18:47:29 +02:00
nhmall
a873129caf withdraw fixes35.0 part of prior commit
There was actually a fixes35.0 entry further down that covered off
that particular entry already which I missed first time around.

> many instances of physical damage were not taking Half_physical_damage
>	into account when reducing your hitpoints
2015-03-17 18:47:29 +02:00
nhmall
3e5d6bf68f catch up on half-physical damage docs
This is catching up on some things that were changed
in development years ago that Dave C. suggested be
documented.

For the record:
-The things that were evaluated and ruled out
are now documented in include/youprop.h so they don't
come up again.

- The things that were evaluated and deemed to be susceptible
to the intrinsic and thus led to a modification in the code
are listed below in this commit message.

Modifications:
- A crystal ball exploding on being applied
- Artifacts' blasting
- Being a fish out of water
- Being hit by Mjollnir on the return
- Being thwacked by an iron ball chained to you
- Boiling/freezing potions
- Broken wands
- Bumping head on ceiling by cursed levitation
- Burning (un)holy water
- Chest/door/tin traps
- Dipping a lit lamp into a potion of oil
- Exploding rings and wands (under all circumstances)
- Exploding spellbooks
- Falling downstairs
- Falling into a (spiked) pit
- Falling off or failing to mount a steed
- Falling on a sink while levitating
- Getting squished in a pit under a boulder
- Hitting your foot with a bullwhip
- Hitting yourself with your pick-axe
- Hooking yourself with a grappling hook
- iron-ball-pulling yourself out of a bear trap
- Jumping/Newton's-Thirding into something solid
- Kicking something that makes you go "Ouch!"
- Land mine explosion
- Sitting in a spiked pit
- Stinking cloud damage
- Thrown potion (bottle)
- Zapping yourself with a wand, horn or spell
- Jumping yourself out of a bear trap
2015-03-17 18:47:29 +02:00
Pasi Kallinen
232d4e69bb Death talks in CAPITAL LETTERS 2015-03-17 18:47:29 +02:00
nhmall
2904297cc0 Additional obstruction messaging fixup 2015-03-17 18:47:28 +02:00
nhmall
995ba09363 fix messaging in obstructed() in lock.c
From ais523's recent list of bugs:
If a long worm tail is blocking the door, and you're blind and not
telepathic, attempting to close the door marks the position of its head.

From an email received in late September 2014 before the git conversion:
> I was trying to close a door, not noticing that there was a garter
> snake there, and this message resulted:
> The garter snake stands in the way!
> I haven't tried it with any other monsters without feet, but
> "stands in the way" appears to be the wrong way to describe
> this situation...

Both of the above were found in the same function in lock.c
2015-03-17 18:47:28 +02:00
nhmall
c2ed47803a "swallowed whole" was preceded by "You bite into"
Another reported by ais523:
The death message "swallowed %s whole" is preceded by
"You bite into %s."; these contradict.
2015-03-17 18:47:27 +02:00
nhmall
f2d9494d95 abuse wisdom in keeping with Rider eating msg
The death message for eating a Rider is "unwisely tried to eat...", but
it doesn't abuse Wisdom (potentially relevant if you lifesave)
2015-03-17 18:47:27 +02:00
Derek S. Ray
3b89c474ab Initial version of simple recipes file 2015-03-17 18:47:27 +02:00
Pasi Kallinen
73b944037a Fix warnings 2015-03-17 18:47:26 +02:00
nhmall
631005ed03 charge for a boulder that fills a pit in shop
Changes to be committed:
	modified:   src/do.c

From the email sent by ais523 earlier:
> You aren't charged for digging a pit below an unpaid boulder
> (causing the boulder to fill the pit).
2015-03-17 18:47:26 +02:00
nhmall
ad1d682751 from ais523 list: charge for boulder filling pit 2015-03-17 18:47:26 +02:00
Pasi Kallinen
9e0d8deaed TTY: Implement the menu_search command
When in a menu that allows selecting entries, press ':'
to enter any text. Entries that match the text (via pmatch)
will be toggled.
2015-03-17 18:47:25 +02:00
Pasi Kallinen
36995448fb Add MAX_STATUENAME_RANK sysconf setting
MAX_STATUENAME_RANK tells how many score file entries to use
for random statue names.
2015-03-17 18:47:24 +02:00
Pasi Kallinen
21cce7fbe6 getpos improvements: automatic description
Pressing '@' will move the cursor on top of the hero.
Pressing '#' will toggle automatic description mode, where
the feature under the cursor is automatically described
when the cursor is moved.
2015-03-17 18:47:23 +02:00
nhmall
d594f9fe01 catch up on some fixes entries 2015-03-17 18:47:23 +02:00
Pasi Kallinen
770a92d259 Add boolean option "bones"
Setting bones off prevents saving and loading bones files.
2015-03-17 18:47:22 +02:00
Pasi Kallinen
ee7e9f563b Fix GENERIC_USERNAMES thinko 2015-03-17 18:47:22 +02:00
nhmall
074fb69be0 do_look() in post-3.4.3 code fixes entry 2015-03-17 18:47:22 +02:00
nhmall
5174eb157f One VS Makefile for Nethack that works with VS2010-VS2015 2015-03-17 18:47:21 +02:00
nhmall
2b83895fd4 typo in format string on previous commit 2015-03-17 18:47:21 +02:00
nhmall
20b16455ef more do_look() glyph usage without it being set properly
Changes to be committed:
	modified:   src/pager.c

When the previous occurrence that triggered a segfault
was fixed, I didn't check for more of them. It turns out there
were more instances.

This also removes some dead code.
2015-03-17 18:47:21 +02:00
Pasi Kallinen
63e7d97148 Change command X to twoweapon toggle
Explore mode is now an extended command #exploremode.
There's no sense that a command used max. once per game, and
in normal games not at all, takes up a key. So, analogous to
the 'x' command (swap weapons), 'X' now toggles two-weapon
combat.
2015-03-17 18:47:20 +02:00
Pasi Kallinen
504048c0a8 Comment typofix 2015-03-17 18:47:20 +02:00
Pasi Kallinen
c4c81480ca Use a menu to loot multiple containers
When looting a location with multiple containers, show a menu for user
to pick the containers to loot instead of asking a yes/no question for
each container.
2015-03-17 18:47:19 +02:00
Pasi Kallinen
c92c8ab9d1 Define for generic usernames which prompt for name
Instead of hard-coding the "play", "player", etc. usernames
which will prompt the user for their name, allow defining
the names in config.h
2015-03-17 18:47:19 +02:00
nhmall
0b231571bc fix a segfault in mapglyph reported by Pasi earlier today
Changes to be committed:
	modified:   src/pager.c

Steps to reproduce the reported segfault:
Use / command, answer n, press space and enter

In do_look() variable glyph is only set to a proper
value if using the screen (from_screen) or the
mouse (clicklook).

On the code path that triggered the segfault,
glyph was being passed to mapglyph with a random
arbitrary value.

If glyph had been initialized at the start of
do_look(), it would have prevented the segfault,
but would have always displayed a giant ant or
something silly instead of the correct thing.

Don't use glyph except under
from_screen || clicklook.
2015-03-17 18:47:19 +02:00
Pasi Kallinen
dd0a28c7b1 TTY: Prevent accidental escapes from string entries
On NAO, one of the major complaints was accidental escaping
from wishing prompt when using cursor keys.  The users were
trying to go "back" on the entry to fix a typo, but lost
the wish instead.

This prevents escaping out of a text prompt if there is any
text entered into the prompt; pressing escape clears the prompt.
2015-03-17 18:47:18 +02:00
Pasi Kallinen
bb2351b83f TTY: Do not cut off statuslines at 80 characters
Show as much of the status line as possible, instead of chopping
it at COLNO - this prevents possible game-influencing status
effects (Ill, Burdened, etc) from being hidden.
2015-03-17 18:47:18 +02:00
Pasi Kallinen
66a1f0ced4 Implement fcntl(2) file locking
If you run a server, then you know of the somewhat annoying perm_lock
errors that creep up, requiring your attention before anyone else can
start a game.

This patch properly implements fcntl(2) locking on systems that can
handle it (*nix systems), that results in the lock being automatically
released on program termination, whether abnormal or not.

Original patch by Drew Streib, update by Edoardo Spadolini
2015-03-17 18:47:17 +02:00
Pasi Kallinen
7fa05c6311 You_hear already checks deafness 2015-03-17 18:47:16 +02:00
Pasi Kallinen
7d8d8ad1f5 Add database entry for land mine 2015-03-17 18:47:16 +02:00
Pasi Kallinen
587d1678f7 Add database entry for fedora 2015-03-17 18:47:15 +02:00
Pasi Kallinen
cf66f8bceb Make shuriken entry also match throwing star. 2015-03-17 18:47:15 +02:00
Pasi Kallinen
aeb3b49549 Fix shuriken attribution 2015-03-17 18:47:15 +02:00
Pasi Kallinen
f0114b2ead Add database entry for shuriken 2015-03-17 18:47:15 +02:00