Commit Graph

65 Commits

Author SHA1 Message Date
cohrs
559be58c21 conflicting delayed killers
Introduce a new set of functions to manage delayed killers in the trunk, used
in addressing the various reports of delayed killer confusion.  Since existing
delayed killers are related to player properties, the delayed killers are
keyed by uprop indexes.  I did this to avoid adding yet another set of
similar identifiers.
- the new delayed_killer() is used for stoning, sliming, sickness, and
delayed self-genocide while polymorphed.  Some other timed events don't
use it (and didn't use the old delayed_killer variable) because they
use a fixed message when the timeout occurs.
- A new data structure, struct kinfo, is used to track both delayed and
immediate killers.  This encapsulates all the info involved with
identifying a killer.  The structure contains a buffer, which subsumes the
old killer_buf and several other buffers that didn't/couldn't use killer_buf.
- the killer list is saved and restored as part of the game state.
- the special case of usick_cause was removed and a delayed killer list
entry is now used in its place
- common code dealing with (un)sliming is moved to a new make_slimed function
- attempted to update all make dependencies for new end.c -> lev.h
dependency, sorry if I messed any up
2003-09-29 19:24:20 +00:00
cohrs
22fe9838f3 SAFERHANGUP support for win/Qt.
Now all the current Unix window-ports support it.
2003-09-19 04:08:37 +00:00
warwick
9d83d474f4 Solve a number of MacOSX problems. 2003-09-11 04:25:52 +00:00
kmhugo
1c17e4087a Qt/MacOS X tidbit
The Info.plist file contains vital information about a given
application package.  Rename the file from .pli to .plist (note
that other files in this directory use long extensions).
Also correct and add to some of the information in this file.
2003-09-03 00:16:51 +00:00
nethack.allison
99bcdf6a4e expand wincap options to second field
<Someone> wishes to add a couple of new options to the wince port ("run fullscreen" and "do not use CE software keyboard").

The wincap field was full, so this adds a second field for
additional options.
2003-07-17 01:35:31 +00:00
warwick
cb71f71b53 The POSIX function yn() is sometimes a macro (eg. GCC 3.2, Linux),
so undefine it (we don't need either here).
2003-04-22 06:57:27 +00:00
warwick
ccb0973a23 Another key fix for MacOSX. 2003-04-02 07:04:16 +00:00
warwick
d5f40ec222 Show true key sequences (essential on MacOSX). 2003-03-28 01:41:38 +00:00
warwick
8bc452fe31 Fix random character selection, as From a bug report. 2003-03-10 06:48:53 +00:00
warwick
04554e7729 Work on more UNIX systems. 2003-02-26 07:25:54 +00:00
warwick
876fb8aca1 <email deleted>
If race is set to random and role is set to something
specific, the Qt interface sometimes hangs trying to
determine an appropriate race/role.

This patch that fixes the problem, and makes 'random'
work more appropriately.
2002-11-27 04:37:12 +00:00
warwick
b07484b572 Remove test code (font was wrong). 2002-10-14 05:39:39 +00:00
warwick
21dd13c294 Unhide the "click-to-the-left-to-set-count" feature, since it's a FAQ. 2002-08-22 05:10:29 +00:00
warwick
ab63d7830e IPKG control file - specifies the packaging of files
for a ".ipk" binary package for handheld Linux (eg. Qtopia).
2002-08-20 07:35:05 +00:00
warwick
bd0d0f4f3d Information about compiling for Qtopia. 2002-08-20 07:31:48 +00:00
warwick
f75de289f8 Default to compact mode on embedded builds.
(one less FAQ to answer)
2002-08-20 07:26:22 +00:00
warwick
22e65c3e9e Support for 2 tile sizes ("zooming"). Still needs rc file support.
Make non-rest-on-space space and Enter do the sam as clicking on
current location. On handhelds, this is the button on thumbpad.
2002-08-14 06:12:37 +00:00
warwick
8285ca28c6 Allow arrowkeys to move player, including diagonals by pressing multiple
keys before releasing. Works well on handheld's thumbpad, perhaps less
useful on a fullsize keyboard.
Also some Qtopia-only fixes for Qt windowport.
2002-08-14 05:01:56 +00:00
warwick
fb4f19662b Honour more WINCAP flags. 2002-07-29 05:19:49 +00:00
warwick
b5847aea11 Honour wc_tile_width, wc_tile_height, and wc_tile_file. 2002-07-24 06:28:18 +00:00
warwick
16b7d4a099 Store plname in save files (and restore it).
Move get_saved_games() functionality to files.c
Use moved get_saved_games() functionality in Qt windowport.
[also some non-enabled perminv code in Qt windowport]
2002-07-22 06:25:52 +00:00
warwick
7dd72e4ac2 Turn "_" into " ", since "Brave_Sir_Robin" looks yucky.
Proper fix is to store name in file.
2002-07-04 06:26:15 +00:00
warwick
a495cf38ad Fix focus order for playerselection. 2002-07-01 05:06:56 +00:00
warwick
6fc29fb400 Avoid some key handling problems on Mac.
(will also be fixed another way in Qt/Mac, but I like to
be thorough :-)
2002-07-01 05:05:04 +00:00
warwick
7ca75f5806 Screens are getting bigger... make 64x64 the maximum scaled tile size. 2002-04-03 08:09:47 +00:00
cohrs
2031835cb0 One leftover height use in Qt tile support 2002-03-18 00:02:51 +00:00
cohrs
b6189efe2a X11 wide tilemap support
- support X11 tile files (with or without XPM) that are 40 tiles wide
- rearrange some X11 code to share more code between XPM & non-XPM options
- clean out some deprecated X11/winmap.c #ifdefs
- update Qt code minimally to handle such an XPM file
2002-03-17 20:02:47 +00:00
warwick
be7145d1a5 Workaround bug in SHARP SL5500 ROM.
(not essential for 3.4.0, since the SL5500 port still needs more work anyway)
2002-03-13 06:04:53 +00:00
warwick
afae7f931c Sometimes there is no main widget. 2002-03-11 08:18:47 +00:00
jwalz
c7325ee019 Run 'make depend', after fixing up output. 2002-03-09 03:13:18 +00:00
nethack.allison
742e1e8c90 3.3.2 to 3.4.0 2002-02-04 16:11:00 +00:00
warwick
6549930ee2 Qt: Fix default dialog button
In Qt 3, default button is always set to something... it was set to "Cancel"
in this case - not a good thing when you are granted a wish :-(
2002-02-04 10:23:30 +00:00
nethack.allison
cb6a93641b Adjust window-port related option processing
to allow common parsing in the core, and direct access to the
results by the window port.

Notes:

o Adds a new field, wincap, to the window_procs
structure for setting bits related to the preference
features that the window port supports.  This allows
run-time determination of whether a particular option
setting is applicable to the running window port.  A
window-port is free to support as many, or as few,
of the available options as it wants.  Ensure that
only the ones supported have their corresponding bit
set in window_proc.wincap. [see chart in
doc/window.doc for help with that.]

o The settings I stuck into wincap for each window
port are almost certainly not accurate, so each port
team should review them.  You should only include
the ones that you will actually react to and make
adjustments for if the user changes that option.
Without the setting in wincap, the option won't even
show up in the 'O'ptions menu.

o preference_update() added to the window-port
interface, so that the window-port can be notified
if an option of interest (an option with its
corresponding bit set in wincap field) is
changed.

o provided a genl_preference_update() routine in
windows.c and used it for all the existing
window ports since they don't have a functional
one of their own yet.

o this messes around heavily with iflags and the options
arrays in options.c

o I hope I didn't break any port's existing code. I
tried not to.  The Mac however, in particular, should
be looked at because it suffered a namespace collision
with what I was working on around fontname.  It had
Mac specific font stuff in options.c. Please test
the Mac.
2002-02-03 05:31:47 +00:00
warwick
769396c648 remove debug message 2002-01-30 03:55:41 +00:00
warwick
654a297052 MacOSX/Qt system tweaks
These changes clean up build warnings and allow the resulting "NetHack"
Application icons to be dragged around freely in the Finder, as is expected
for Mac apps.
2002-01-24 05:49:04 +00:00
warwick
dc493d6af2 Enough MacOS X documentation to answer FAQs. 2002-01-23 07:57:11 +00:00
warwick
fe5a464dc3 Always use maximized window in Qt windowport. 2002-01-23 03:03:37 +00:00
warwick
93c5ecf3ea Qt GUI cleanup
Use "Alt+X", not "Alt-X".
This is actually *necessary* on MacOSX.
2002-01-23 01:02:37 +00:00
warwick
3c0c8b0516 Fix some crashes in unused tile editor.
tileedit is the program I use to edit tile files (directly).
2002-01-22 08:44:37 +00:00
warwick
dab3df306f Remove win/Qt/nethack.png
Obsoleted by nhsplash.xpm (a text format). The binary still has more detail,
but until someone has a use for it, I'll keep it aside.
2002-01-22 08:41:57 +00:00
warwick
5861942805 Doc fix for Install.Qt
(USER_SOUNDS now undeffed automaticaaly for old versions)
2002-01-22 08:39:00 +00:00
warwick
75305dc3b3 Qt compatibility fixes
Fixes for Qt version 2.0 (old).
2002-01-21 05:17:40 +00:00
warwick
58b5454a35 Player selection fix on Qt windowport.
Prompt for player details even if gender or alignment is unspecified.
2002-01-21 05:15:06 +00:00
warwick
d2c3d25462 (Qt) Old version support
Workarounds for Qt 2.1.0beta4 (?)
2002-01-18 08:47:28 +00:00
warwick
6ddd18069e Splash-screen fixes:
- change "Warwick Allison + DevTeam" to just "DevTeam".
  - fixes for Qt 3.0.
2002-01-17 06:40:41 +00:00
warwick
f86ab80cfb Changes work with Qt 3.0 (basically just use obsoleted QTableView class
until I get around to replacing it properly).
2002-01-17 04:10:23 +00:00
warwick
5bf430c3d3 Ignore Alt-key navigation to menubar, as it's annoying when you
use Alt-Direction to move around.
2002-01-16 03:09:12 +00:00
warwick
b31f25cc25 isHidden() is not in Qt 2.1. It's only *really*
needed in Qt 3 (it make multi-head displays work better). This patch make
that explicit.
2002-01-13 01:08:41 +00:00
warwick
15e5fc1a95 Fix YN function in Qt windowport compact mode (wasn't parsing properly).
Often, the yn_function "choices" parameter is not set, so for a non-keyboard
GUI (compact mode is for handheld computers with a stylus), the windowport
has to parse the prompt to find out the posible input choices. I got the
parsing wrong.
2002-01-13 00:33:02 +00:00
cohrs
d3765d91e8 re-adding nethack.png correct flags 2002-01-12 17:19:37 +00:00