Mercurial > hg > early-roguelike
view rogue3/machdep.h @ 296:000b1c5b8d63
UltraRogue: fix inventory collision after save and restore.
Inventory letters are based on "identifiers" stored in objects' o_ident
field. Identifiers are allocated by get_ident(), which keeps a list of
objects that have them, to avoid giving the same identifier to multiple
objects.
The list is not stored in the savefile, so after restore, get_ident()
was not aware of existing identifiers. This resulted in picked-up
objects having the same inventory letters as objects restored from the
file.
The restore code now adds all objects with identifiers to the list.
author | John "Elwin" Edwards |
---|---|
date | Mon, 15 Jan 2018 20:20:35 -0500 |
parents | 07c4d4883ef2 |
children |
line wrap: on
line source
/* * machine dependicies * * %G% (Berkeley) %W% * * Rogue: Exploring the Dungeons of Doom * Copyright (C) 1980, 1981 Michael Toy, Ken Arnold and Glenn Wichman * All rights reserved. * * See the file LICENSE.TXT for full copyright and licensing information. */ /* * Variables for checking to make sure the system isn't too loaded * for people to play */ /* MAXLOAD and MAXUSERS are now set by configure. */ #define AUTHORUID 0 #if 0 #define MAXUSERS 25 /* max number of users for this game */ #define MAXLOAD 40 /* 10 * max 15 minute load average */ #endif #define CHECKTIME 15 /* number of minutes between load checks */