]> granicus.if.org Git - nethack/commit
main() reorganization (trunk only)
authornethack.rankin <nethack.rankin>
Sun, 2 Apr 2006 07:35:30 +0000 (07:35 +0000)
committernethack.rankin <nethack.rankin>
Sun, 2 Apr 2006 07:35:30 +0000 (07:35 +0000)
commit2c0a072ef1df0b39728c799517ec5a9996f6a86f
tree81755f992699258b5d7343d26fe6e2a9acb75384
parent8ed2748d5259c53b510edcb5b5376af942c07d77
main() reorganization (trunk only)

     Move some internals-related code out of port-specific main so that
it isn't duplicated a bunch of times.  One minor side-effect of this
change is that if you auto-pickup something at the very start of a game,
it will happen after any full moon/new moon/Friday 13th message rather
than before.  There's a second change for some:  the shared main() used
by several of the micro ports had a small difference in game play--if you
saved a game while on an engraving, it would automatically be read when
you resume--that will now occur for everybody [Elbereth weenies rejoice!].
pcmain() was also calling update_inventory() at start of play.  That's
unnecessary for new games, where inventory initialization triggers a call
to it for each item added to your pack; but I wasn't sure about restored
games, so everybody gets it there now.

     The Mac and BeOS ports evidently haven't been touched it some time;
they still referenced flags.move which got replaced by context.move quite
a while back.  The Windows GUI code has a declaration for mswin_moveloop()
which appears to be non-existant, but I left it alone.  I assume that the
Qt interface uses the existing main() routines; at least I couldn't find
any start of game code specific to it.  vmsmain's revised main() is the
only one which has been tested.
include/extern.h
src/allmain.c
src/restore.c
sys/be/bemain.c
sys/mac/macmain.c
sys/share/pcmain.c
sys/unix/unixmain.c
sys/vms/vmsmain.c
win/win32/winhack.c