Commit Graph
100 Commits
Author SHA1 Message Date
Pasi Kallinen 4f459a9532 Fix WINCHAIN compilation 2018-03-10 21:48:22 +02:00
Pasi Kallinen b416564f39 Fix garbage value warning 2018-03-05 21:09:15 +02:00
Pasi Kallinen 09554c2b96 Make spotless should remove qt4 specific files 2018-03-03 16:58:07 +02:00
Pasi Kallinen 68523fe88c Add catch-all database entry for the polearms 2018-03-03 16:15:20 +02:00
Pasi Kallinen d136ffbba6 fixes typo bit, pt3 2018-03-02 16:56:18 +02:00
Pasi Kallinen fc74b77c94 fixes typo bit, pt2 2018-03-02 16:38:52 +02:00
Pasi Kallinen a7df3ce4c7 fixes typo bit 2018-03-02 16:32:29 +02:00
Pasi Kallinen a9b6b6a4eb Fix Cleaving giving dmonsfree warning
Due to inverted logic, hitting a blue jelly with the Cleaver could cause
a dmonsfree warning - the jelly would die, but then come back to life
via the passive attack.  This is a post-3.6.0 bug
2018-03-02 15:52:27 +02:00
Pasi Kallinen ee64ef5482 Fix comment typo 2018-02-28 09:17:06 +02:00
Pasi Kallinen a3d713d98b Tiny Guidebook fixes 2017-11-24 11:09:16 +02:00
Pasi Kallinen 18aab1ab12 Make shopkeepers bill hero for burying merchandise 2017-11-14 19:32:31 +02:00
Pasi Kallinen 59d4ac02f7 TTY: Treat carriage return as newline
Before this change, more-prompts and input text -prompts could not
be accepted with carriage return. Now, just like in menus, carriage
return is treated the same as a newline.

To test, use 'stty -icrnl'
2017-11-14 16:14:06 +02:00
Pasi Kallinen c2f767e1fe Fix a warning 2017-11-06 15:28:13 +02:00
Pasi Kallinen 81b1461600 Explicitly ignore the return value
Fixes scan-build complaint about dead assignment
2017-11-05 17:11:41 +02:00
Pasi Kallinen b87db2dd3f Init variables to random 2017-11-05 14:17:22 +02:00
Pasi Kallinen 647ea55b1a Fix compile of tile2x11
I was too zealous changing fprintf to the Fprintf macro, which
ignores the return value.
2017-11-02 23:41:55 +02:00
Pasi Kallinen f3814417e9 Use enums for properties 2017-11-02 13:37:53 +02:00
Pasi Kallinen f2765c573f Document therecmdmenu 2017-11-01 16:13:51 +02:00
Pasi Kallinen 089863088e Locked chests and large boxes contain more items 2017-11-01 15:38:44 +02:00
Pasi Kallinen f19752fc32 Reduce the amount of gold laying on the floor
There's far too much gold just laying around on the floor.
Didn't previous adventurers grab most of it?

This should incentivize gold detection and digging out vaults,
selling stuff to the shopkeeps, and making it harder to donate
for protection.

Most radical reduction on the first few levels, for dlevel 1,
average amount of gold was 80, is now 10, for dlevel 2, 95->15

Does not change the amount of gold deposited by mineralize,
in the vaults, or contained in chests and large boxes.
2017-11-01 15:23:05 +02:00
Pasi Kallinen 001d9681c2 Make Vlad slightly tougher
Increase speed from 18 to 26, HD from 14 to 28, AC from -3 to -6,
weapon attack from 1d10 to 2d10, bite from 1d10 to 1d12
2017-11-01 00:07:29 +02:00
Pasi Kallinen c50a93b5e0 Charisma affects the leeway in demon lord bribes 2017-10-31 22:30:07 +02:00
Pasi Kallinen fe9762d1cc X11: Fix renaming at player selection
Due to the new player selection dialog I did, it was possible
to rename your character - but this didn't rename the lock files
and tried to load a save from the wrong name.

This is a bit of a hack, but seems to work and didn't seem to
cause problems for the tty.
2017-10-31 21:18:24 +02:00
Pasi Kallinen bf0223fd9f Fix door orientation in des-files
Doors in des-files were always generated vertically.
This wasn't visible unless you had separate symbols for
closed vertical and horizontal doors, or used tiles.
2017-10-26 22:00:50 +03:00
Pasi Kallinen 279050ba84 Sometimes put rings dropped into sinks in the pipes
aka bury the ring under the sink. Idea from Fredrik Ljungdahl.
2017-10-25 14:21:10 +03:00
Pasi Kallinen 4af8a93cff Status hilites: Fix defining hunger via menu 2017-10-25 12:27:02 +03:00
Pasi Kallinen 4dca7db840 Fixes entries for recent Windows commits 2017-10-25 11:05:03 +03:00
Pasi Kallinen b02dae91a1 Fix status hilites parsing from config file 2017-10-25 09:59:17 +03:00
Pasi Kallinen 0bf824a81e Prevent adjusting items to the dash inventory letter
The #adjust command allowed, due to compactified buf, putting
items into the '-' inventory letter, which is usually reserved
for "empty hands", zeroobj. This caused problems down the line
when user was allowed to pick that letter for dropping.
2017-10-20 16:22:57 +03:00
Pasi Kallinen 7e28cc64f6 X11: Capitalize the main window correctly 2017-10-16 17:34:29 +03:00
Pasi Kallinen 491b40897f Ignore Qt specific config options silently
If the binary wasn't compiled with Qt, don't complain
about Qt specific config options.
2017-10-16 12:47:07 +03:00
Pasi Kallinen 28061e98dc Qt4: Use pixel-perfect tile scaling
SmoothTransformation (bilinear filtering) causes artifacts
at tile edges, and the blurry tiles look even worse.
2017-10-16 10:35:36 +03:00
Pasi Kallinen f1618fe6dd X11: Put yn prompts into message history 2017-10-15 21:48:42 +03:00
Pasi Kallinen 1af921274e More Makefile verbosity 2017-10-15 18:00:56 +03:00
Pasi Kallinen 612a0cb909 Make boulder dropping noise wake up monsters
Also, don't bother waking up monsters who would end up dead anyway.
2017-10-14 21:29:20 +03:00
Pasi Kallinen 7d8ba1d46f Monsters hit by a boulder from your scroll of earth should get angry 2017-10-14 21:00:47 +03:00
Pasi Kallinen 1b42b1499b X11: player selection dialog tweaks 2017-10-14 18:07:09 +03:00
Pasi Kallinen 87b94230b5 X11: player selection enter should obey button active state 2017-10-14 17:38:06 +03:00
Pasi Kallinen 1ff4dfee85 Reduce *nix Makefile verbosity
Instead of showing all the CFLAGS and whatnot, just show "[CC] allmain.c"
or whatever. The verbose output can be switched back on with VERBOSEMAKE=1
2017-10-14 15:56:03 +03:00
Pasi Kallinen 1caa212bd9 Fix warnings 2017-10-14 13:48:44 +03:00
Pasi Kallinen 04b08298a3 Use the same macro for output in tile2x11 2017-10-14 13:10:34 +03:00
Pasi Kallinen 8723742015 Don't output x11 tile compilation info into stderr 2017-10-14 09:15:07 +03:00
Pasi Kallinen 1d8aea1ca3 Qt4: Don't use version string directly 2017-10-14 01:33:56 +03:00
Pasi Kallinen 9ec7e961d3 Fix copypaste error in Qt4 and X11 plsel dialogs 2017-10-13 23:34:44 +03:00
Pasi Kallinen 7b156bf704 X11: add new player selection dialog
The dialog shows the player's name, race, role, gender, and
alignment in a single window, similar to the Qt4 dialog.
Also allows randomizing the character selection.

Use the dialog by setting OPTIONS=player_selection:dialog
2017-10-13 22:41:43 +03:00
Pasi Kallinen b340e783f5 Qt4: Remove extra empty space from player selection 2017-10-12 13:43:46 +03:00
Pasi Kallinen 11e50e8ca2 Qt4: Add Random button to player selection 2017-10-12 13:37:52 +03:00
Pasi Kallinen b586d58dbb Qt4: Gender, not Sex. TOURIST is unconditional. 2017-10-12 12:42:32 +03:00
Pasi Kallinen 55143cd66e Qt4: Add NetHack version to player selection popup 2017-10-12 12:33:04 +03:00
Pasi Kallinen 46217bbda2 Qt4: Put yn queries in message history
When using OPTIONS=popup_dialog, or compiling with USE_POPUPS,
the yes/no -questions weren't put into the message history.
2017-10-11 09:50:22 +03:00
Pasi Kallinen 76a47b5e34 Qt4: Save message history to dumplog 2017-10-11 01:06:07 +03:00
Pasi Kallinen c6f0058e3d Qt4: Handle saving/loading message history 2017-10-11 00:32:39 +03:00
Pasi Kallinen 2fcf1ad139 Qt4: put and get message history 2017-10-10 22:55:30 +03:00
Pasi Kallinen 4dff3a707e Qt4: Pile mark 2017-10-10 21:47:35 +03:00
Pasi Kallinen dbacc98a1d Qt4: Fix wrong condition in search blocking 2017-10-10 21:13:37 +03:00
Pasi Kallinen 257f17f8df Qt4: Don't segfault with QT_COMPACT 2017-10-10 20:18:04 +03:00
Pasi Kallinen 2fa61f9038 Qt4: Use generic putmixed routine 2017-10-10 19:56:51 +03:00
Pasi Kallinen 4f95d19ab7 Qt4: Prevent selecting all in pick-one menus 2017-10-10 19:28:03 +03:00
Pasi Kallinen f06cf62a35 Qt4: Allow clicking anywhere in menus
Instead of requiring clicking on the checkbox, allow clicking
anywhere in a selectable line to select it.
2017-10-10 19:19:20 +03:00
Pasi Kallinen 76d223c178 Qt4: handle menu page selector keys
Qt4 doesn't do menu paging, so handle the select page, invert page,
and unselect page like selecting, inverting or unselecting all.
2017-10-10 18:20:34 +03:00
Pasi Kallinen e2b367102a Complain if hints file does not exist 2017-10-10 17:50:39 +03:00
Pasi Kallinen 7f495a1ee3 Add context menu for the location next to you 2017-10-10 16:49:07 +03:00
Pasi Kallinen 99c6b7f4da Add context menu for current location
Add a new boolean option herecmd_menu. If this is on, and using
a windowport that supports mouse, clicking on your character pops
up a menu of actions doable in that location. Basically this is
nothing new, as almost all of the same actions were done before
on the mouse click.

You can also pop up the context menu with the #herecmdmenu
extended command
2017-10-10 15:35:33 +03:00
Pasi Kallinen 4659c55b5c Win32GUI: increase scroll_margin
Scrolling when 5 tiles from the edge is far too little,
you could get zapped from farther away.
2017-10-08 18:56:10 +03:00
Pasi Kallinen 61e2960c02 win32: Turn off autopickup by default
Watching new players stream NetHack, the conclusion is that
everyone turns off autopickup by default... once they learn how
to do it.
2017-10-08 18:36:57 +03:00
Pasi Kallinen 6b51f6ce09 Qt4: Use TIMED_DELAY and same delay as tty 2017-10-08 11:28:28 +03:00
Pasi Kallinen a69c57b865 Automatically define LINUX, ifdef __linux__ 2017-10-08 10:44:59 +03:00
Pasi Kallinen e8ef27d985 Enable dumplogs for X11 and Qt4 2017-10-08 03:04:52 +03:00
Pasi Kallinen 583edab99f Qt4: Add menucolors
The Qt4 windowport already supported my 3.4.3 menucolors patch, so
adding that was simple.
2017-10-08 01:45:50 +03:00
Pasi Kallinen ed335dd0a7 Add Qt4 windowport
Originally by Ray Chason for 3.4.3, based on the Qt windowport by
Warwick Allison. The look and feel is mostly the same.

Some improvements over the Qt 3 interface are:

* Panes are resizable
* Full support for IBMgraphics, and walls and corridors are drawn with
  graphical primitives for a continuous appearance no matter what the font
  says
* Lots of irritating glitches fixed
* Menus support proportional fonts correctly

Adding this because the old Qt windowport cannot be compiled on Qt4,
even with Qt3 compatibility stuff.

TODO:
 - background map glyphs
 - status hilites
 - menucolors
2017-10-08 01:15:02 +03:00
Pasi Kallinen a4706b0928 Use enums for skills 2017-10-07 17:10:46 +03:00
Pasi Kallinen 9b82b72c6e Unmap invisible glyphs when cleaving and no monster present 2017-10-07 16:30:17 +03:00
Pasi Kallinen 4b7aea0eac Fold invisible glyph unmapping into single function 2017-10-07 16:24:49 +03:00
Pasi Kallinen 22ad104318 Master Key of Thievery warns about undetected traps
If the key is wielded and touching skin (that is, you're not
wearing gloves), it will give heat-related messages like
minesweeper, counting the undetected traps around player.
2017-10-06 01:21:06 +03:00
Pasi Kallinen 856034d585 Cleaver can hit three monsters with one swing
When hitting a monster with the Cleaver, you swing it in an
arc, possibly hitting the monsters to the left and right of
the targeted monster.

Based on code by Fredrik Ljungdahl
2017-10-04 22:01:28 +03:00
Pasi Kallinen 2804e750a0 Default status hilites for Windows 2017-10-01 17:44:41 +03:00
Pasi Kallinen 1027eacbca Give feedback when released from a bear trap 2017-09-28 22:38:08 +03:00
Pasi Kallinen e2e7e6464d hitpointbar is also available on Windows GUI 2017-09-26 17:45:25 +03:00
Pasi Kallinen f6070be9e8 Use the existing othropt options array for the menu items 2017-09-26 10:58:26 +03:00
Pasi Kallinen 69f7a78dba Hilite Status: Improved
Allow defining multiple stops per field. Add hitpointbar.
2017-09-26 10:04:25 +03:00
Pasi Kallinen 596bc64341 Add option to make commands ask an inventory item via menu
Turning the boolean option force_invmenu makes all the commands
that ask for an inventory item pop up a menu instead of asking
a text query.  This should be much more friendlier to new
players, and is very useful for window ports on systems
with touch screens and no physical keyboard, such as cell phones.
2017-09-23 22:47:14 +03:00
Pasi Kallinen db23363d3f Fix mention_walls reporting secret doors as solid stone 2017-09-22 16:33:20 +03:00
Pasi Kallinen 5aaec6a990 Lint for strncpy return value 2017-09-19 14:12:10 +03:00
Pasi Kallinen b82b41cb5a Fix possible buffer overrun 2017-09-19 14:09:01 +03:00
Pasi Kallinen 98383f7a46 Win32GUI: Prevent ampersand-escaped mnemonics in menus 2017-09-18 15:30:52 +03:00
Pasi Kallinen 5e05cdc570 Change some regex stuff to use config errors 2017-09-17 13:43:48 +03:00
Pasi Kallinen 45401a13bb Show regex error before asking for color
When entering a new menucolor via options, show regex error
immediately afterwards, instead of asking for color and attribute
before showing the error.

Also actually show config errors even if config error handler
hasn't been initialized.
2017-09-17 13:20:28 +03:00
Pasi Kallinen 78e5c9a10a Win32GUI: Allow empty separator lines in menus 2017-09-17 12:17:46 +03:00
Pasi Kallinen 11863dd5e9 Read symbols with config file handler
Also, make config file error handler able to cope with recursion.
2017-09-17 10:15:08 +03:00
Pasi Kallinen 2db7e20116 Fix invisible gold symbol in status lines 2017-09-16 23:49:28 +03:00
Pasi Kallinen f36d1036de Show in wizmode level teleport menu your current location 2017-09-16 18:19:25 +03:00
Pasi Kallinen 52ed881b2c Remove overview for wizmode regenerated map
The wizmakemap command throws away the current level, so don't keep
the overview data for it around.
2017-09-15 14:45:51 +03:00
Pasi Kallinen f8bd77ae03 Use symbolic names for shop repair costs
...and add costs to two places where the door you touched
blew up (picking the lock and opening the door).
2017-09-14 21:07:18 +03:00
Pasi Kallinen cfedd8659d Minor reformat, fix warnings 2017-09-14 14:40:11 +03:00
Pasi Kallinen 0753a0751e Move BoH item loss into separate function 2017-09-14 14:11:09 +03:00
Pasi Kallinen 127f74bb24 Fix more warnings 2017-09-13 14:12:38 +03:00
Pasi Kallinen 1e22a9aaf7 Win32GUI: Allow toggling mouse_support off
Prevents accidental mouse clicks on the map
2017-09-13 14:02:43 +03:00
Pasi Kallinen bd7568b71d Fix compile warnings 2017-09-13 13:59:25 +03:00
Pasi Kallinen b6737fd1f6 config parse return values and error msgs 2017-09-13 13:26:37 +03:00
Pasi Kallinen 2c688a12d5 Handle config file reading at single function
The function handles comments, empty lines, config sections,
CHOOSE, and line continuation, while calling another function
for other lines.

Currently used for config file, sysconf, and WIZKIT.
2017-09-13 12:27:38 +03:00