Commit Graph

7286 Commits

Author SHA1 Message Date
nhmall
fecef470e0 Merge branch 'NetHack-3.6.2-beta01' into win-minor 2018-11-17 06:22:56 -05:00
Bart House
d2436d9f3c Map curso blinking controlled by win32_cursorblink. 2018-11-16 21:48:00 -08:00
nhmall
39c8f4347a Merge branch 'win-minor' into NetHack-3.6.2-beta01 2018-11-16 23:55:02 -05:00
PatR
141dec6d2e feedback for missing readonly data files
If bogusmon, engrave, epitaph, oralces, or rumors won't open, assume
it's because the file is missing so don't have impossible() tack on
"saving and restoring might fix this" when telling the player.
(Missing rumors or oracles previously only used pline() rather than
impossible() so this hadn't been an issue for them.  Now it would be.)
2018-11-16 18:49:12 -08:00
nhmall
20018c2719 Merge branch 'NetHack-3.6.2-beta01' into win-minor 2018-11-16 20:28:54 -05:00
nhmall
96ec49213f Add some windows command line option hooks 2018-11-16 19:32:00 -05:00
PatR
6839ad3faa more vms (vmsbuild.com vs monstr.c)
Apparently I exited emacs without saving and the revised vmsbuild.com
ended up as a backup file that 'git nhadd' wouldn't see.  This was
supposed to be included in the patch committed several hours ago....
2018-11-16 15:34:09 -08:00
Bart House
dcac95b4b3 Delete GDI objects when map window is destroyed. 2018-11-16 13:50:12 -08:00
Bart House
90562f23c0 Menu check boxes drawn correctly when scaled.
Changed from using pattern brush to strech blt when rendering check box.
2018-11-16 13:29:59 -08:00
Bart House
94c4acc144 Made map cursor blink a compile time option. 2018-11-16 13:00:02 -08:00
Bart House
52cbbdafae Completed map back buffer work and implemented map cursor blink.
Map back buffer work is done eliminating all flickering caused by
clears of the front buffer during partial updates.

Implemented a cursor blink in both ascii and tile modes.

Fixed bug where we would lose fit to screen when entering rogue level.
2018-11-16 12:39:04 -08:00
PatR
6ecf97f6e3 vms build/install update
New-ish files 'engrave', 'epitaph', and 'bogusmon' added for 3.6.0
were not handled by playground setup.  NetHack runs without them so
limited testing didn't notice.

Add 'makedefs -s' to build them and include them in installed files.

Also, remove 'makedefs -m' and obsolete monstr.c.
2018-11-16 09:16:48 -08:00
nhmall
a9dcb37ca7 augment codepage850-to-Unicode mappings in nttty 2018-11-16 08:09:18 -05:00
Bart House
3f4090ac38 Remap unicode control codes.
When running NetHack.exe in a console set to code page 850, the
multi-byte to wide character mapping will generate unicode values
in the unicode control code range.  These values need to be re-mapped
to unicode renderable glyphs using the same mappings we use for
control page 437 otherwise the console font might not render a character
for these unicode control values.
2018-11-15 21:42:23 -08:00
Bart House
fdd4e129a1 Removed temporary comment left in by mistake. 2018-11-15 20:58:15 -08:00
nhmall
731e10f058 follow-up bit for stale gold sym 2018-11-15 02:51:27 -05:00
nhmall
f000bfa76a Merge branch 'win-minor' into NetHack-3.6.2-beta01 2018-11-15 02:37:04 -05:00
nhmall
5d53514a56 Merge branch 'win-minor' of https://rodney.nethack.org:20040/git/NHsource into win-minor 2018-11-15 02:36:07 -05:00
nhmall
acdc62a861 stale gold symbol displayed after symset change
a stale gold symbol could be displayed on the status line following a switch
to a new symset, as observed and reported for Windows RogueEpyx symset.

An update is required for gold in the status line for a change to
any of the following:
    context.rndencode value
    the encoded glyph value for COIN_CLASS
    the gold amount
2018-11-15 02:34:45 -05:00
Bart House
1f8c78fb40 Remove commented out line. 2018-11-14 21:08:59 -08:00
Bart House
093dc076ed Modified RIP dialog to take into account monitor DPI. 2018-11-14 20:44:02 -08:00
PatR
d2affc1ee3 X11 menu searching
I was experimenting with some potential changes to menu searching but
have not been satisfied with the result.  However, this bit of code
consolidation is worthwhile regardless of that.
2018-11-14 17:26:10 -08:00
PatR
7400d83ef6 X11 NetHack.ad again
STATUS_HILITES vs HILITE_STATUS:  use the config file option name
rather than source feature name in the "TTY-style status" comment.
2018-11-14 17:23:28 -08:00
PatR
d438bf07c8 X11 resource defaults
Some of the items in NetHack.ad were separated from others by "!"
comment line rather than plain blank line and that tended to make it
look like the two items were directly related.  For the ones which
aren't, remove '!'.

I also expanded some comments and reordered a couple of resources,
moving 'slow' closer to top and advanced 'translations' farther down.
2018-11-14 17:18:12 -08:00
nhmall
9130216545 Merge branch 'win-minor' into NetHack-3.6.2-beta01 2018-11-14 08:04:40 -05:00
nhmall
6764933413 newline at end of file 2018-11-14 07:51:25 -05:00
Bart House
489abb45f5 Added monitor dpi awareness to NetHackW splash dialog. 2018-11-13 20:48:56 -08:00
PatR
bd4cacbc52 fix #H7536 - pet vampire behavior
Vampires tend to take vampire bat form and stay that way, unless/until
there's a closed door they want to pass in which case they change to
fog cloud form.  Those shifted forms are weak, so pet vampires tend
not to attack other monsters, and if they don't take damage, they
won't change to vampire form.  So, when comparing relative strength of
self and foe while deciding whether to attack another monster, treat
their own strength in weak form as if in vampire form, making them be
more aggressive.

Hostile vampires shouldn't need any comparable change.  They don't use
relative strengths when deciding whether to attack something.
2018-11-13 16:29:48 -08:00
PatR
a97d0b7270 fix github issue #159 - eating nurse corpses
Fixes #159

The nurse monster definition is flagged to be able to convery poison
resistance when a corpse or tin is eaten, but the post-corpse code
for nurse healed HP and cured blindness then skipped the intrinsic
handling.
2018-11-13 15:05:54 -08:00
nhmall
8e907a0b0f Merge branch 'NetHack-3.6.2-beta01' into win-minor 2018-11-13 13:32:01 -05:00
Bart House
8069659912 Adjust menu item rendering based on monitor dpi. 2018-11-12 22:40:36 -08:00
Bart House
f67e7c0614 Merge branch 'win-minor' of https://rodney.nethack.org:20040/git/NHsource into win-minor 2018-11-12 21:39:05 -08:00
Bart House
4912149ff2 Implemented back buffer rendering to improve fit to screen rendering
quality.
2018-11-12 21:38:32 -08:00
nhmall
16e014b39f Merge branch 'win-minor' into NetHack-3.6.2-beta01 2018-11-12 23:15:13 -05:00
nhmall
d89deb5bf7 Makefile update to reference recently added file 2018-11-12 23:10:42 -05:00
Bart House
0bbc7cb6db Adjust tile size to bounds of text meterics when in ascii mode. 2018-11-12 19:36:08 -08:00
Bart House
3bb759a9ab Started work to support per monitor DPI. Using DPI to scale tiles
appropriately.

Renamed ntassert to nhassert.  (Naming mistake caused by using ntassert
at work).

Re-ordered a few more includes to get window headers included before
nethack headers.
2018-11-12 17:45:22 -08:00
PatR
5c2ff62089 comment tidbit 2018-11-12 11:08:59 -08:00
PatR
1295e7ee28 conflicting countdowns again
Use the make_foo() intrinsic set/reset routines instead of trying
to manipulate the intrinsics directly.  Previous patch left Dex
down by 1 if stoning caused wounded legs to be fixed, and left
delayed killer allocated if stoning cured sliming or vice versa.
2018-11-12 11:02:40 -08:00
Bart House
f3bc4af242 Removing support for Visual Studio 2015 solution. 2018-11-12 09:13:51 -08:00
PatR
53a6ce2c2a conflicting countdowns
I tried 'pick all' in the #wizintrinsics' menu and after 30 turns,
died with "poisoned by a poisoned, while vomiting".  Food poisioning
and/or terminal illness beat the other fatal conditions to the coup
de gras.  However, the final stage of vomiting sets Sick to 0 cure
food poisoning and ends up clobbering the killer reason if Sick is
due to terminal illness.  It's feasible for that to happen without
using #wizintrinsic, so this fixes that, and also a few other
combinations that seemed contradictory:
1) limbs turn to stone during Stoned countdown now cures wounded legs;
2) turn to stone (a couple of turns later) cures vomiting and sliming;
3) turning to slime during Slimed countdown cures stoning.
2018-11-12 02:13:32 -08:00
Bart House
8944235282 Enforced the inclusion of windows headers before nethack headers.
Moved the code page 437 mapping table to winnt.c so that it could be
used in window and console clients.
Added check that fonts support unicode values we use from code page 437.
Use unicode to draw text if font supports it otherwise use ASCII.
2018-11-12 01:58:56 -08:00
PatR
a22175cd99 prayer vs blocked by boulder
Salvaged from an old, unfinished patch.  When checking whether the
hero is trapped by walls and solid rock, adjacent boulders are
evaluated on whether they can be pushed out of the way.  Extend that
evaluation:  (1) two boulders on a spot are pushable if there is a
pool beyond that spot, and (2) boulders can't be pushed diagonally
in Sokoban.
2018-11-11 16:04:45 -08:00
PatR
ab7fb9360e fix #H7065 - clairvoyance shows trap over monsters
and over the hero.  3.6.0's clairvoyance tried to show things in
a non-standard sequence, which was intentional but had unintended
side-effects like the disappearing monsters complained about in the
report.  To make it work as intended would have required --More--
whenever it kicked in, which is much too intrusive when it happens
every N turns rather than when explicitly casting the spell.

Redo it substantially, and give preference to monsters over objects,
objects over traps, and traps over underlying terrain like normal
vision-based display does.  It now detects all monsters within its
bounding box but shows ones which aren't directly in view as
"unseen monster" unless via spell cast at skilled or expert, or at
basic when also having intrinsic clairvoyance.
2018-11-11 14:28:54 -08:00
nhmall
ed70005c9b Makefile build updates 2018-11-11 15:39:13 -05:00
nhmall
e87496b897 merge fluff 2018-11-11 10:48:08 -05:00
nhmall
a0b53ee391 merge 2018-11-11 10:29:52 -05:00
PatR
e486d941ed couple of #wizintrinsic fixes
When #wizinstrinsic was expanded to be able to set any timed attribute,
some that need more than just a timeout counter were left inconsistent.
1) Timed Flying wasn't blocked by levitation, and existing flight
   wasn't becoming blocked by timed levitation.  Also, eventual flight
   timeout wasn't updating the status line, so false 'Fly' condition
   remained shown until a status update happened for some other reason.
2) Setting timer for Warn_of_mon didn't set up any type of monster to
   warn about so wouldn't do anything.  This sets that to grid bug
   unless already set due to polymorph form or artifact that warns.

The end.c portion is just a bit of formatting.
2018-11-10 18:22:38 -08:00
Bart House
26171ed9f5 Ignore .vs hidden folders generated by visual studio 2017. 2018-11-10 20:33:30 -05:00
Bart House
20e8482e6e Fix crash that can occur when panic is called early. 2018-11-10 20:26:20 -05:00