report ice's thaw state
Classify nearby ice as "solid" (no melt timer), "sturdy" (more than 1000 turns left), "steady" (101 to 1000 turns left), "unsteady" (51 to 100 turns left), "thin" (15 to 50 turns left), or "slushy" (1 to 14 turns left, matching walking on ice with the Warning attribute). [I'm not thrilled with "steady" and particularly "unsteady".] I was originally going to do this just for probing downward, but ended up also doing it for look-here and getpos's autodescribe. It nearly got out of hand and touched more files than anticipated. 'mention_decor' ought to treat moving from ice firmer than thin to thin or slushy, from thin to slushy, from slushy to any other, and from thin to firmer as if moving onto different terrain but I haven't attempted to tackle that. The melt timer could work more like a candle's burn timer, triggering at intermediate stages and resetting itself, so that ice which changes to a weaker state under the hero could be reported to the player. But this doesn't implement that.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.7 decl.h $NHDT-Date: 1686726249 2023/06/14 07:04:09 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.333 $ */
|
||||
/* NetHack 3.7 decl.h $NHDT-Date: 1698264758 2023/10/25 20:12:38 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.339 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/*-Copyright (c) Michael Allison, 2007. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -322,6 +322,10 @@ struct instance_globals_d {
|
||||
but that would require all xname() and doname() calls to be modified */
|
||||
int distantname;
|
||||
|
||||
/* pickup.c */
|
||||
boolean decor_fumble_override;
|
||||
boolean decor_levitate_override;
|
||||
|
||||
boolean havestate;
|
||||
unsigned long magic; /* validate that structure layout is preserved */
|
||||
};
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.7 extern.h $NHDT-Date: 1695159584 2023/09/19 21:39:44 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.1287 $ */
|
||||
/* NetHack 3.7 extern.h $NHDT-Date: 1698264776 2023/10/25 20:12:56 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.1296 $ */
|
||||
/* Copyright (c) Steve Creps, 1988. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
|
||||
@@ -2099,6 +2099,7 @@ extern char *monhealthdescr(struct monst *mon, boolean, char *);
|
||||
extern void mhidden_description(struct monst *, boolean, char *);
|
||||
extern boolean object_from_map(int, coordxy, coordxy, struct obj **);
|
||||
extern const char *waterbody_name(coordxy, coordxy);
|
||||
extern const char *ice_descr(coordxy, coordxy, char *);
|
||||
extern boolean ia_checkfile(struct obj *);
|
||||
extern int do_screen_description(coord, boolean, int, char *, const char **,
|
||||
struct permonst **);
|
||||
@@ -2162,6 +2163,7 @@ extern void getlock(void);
|
||||
extern int collect_obj_classes(char *, struct obj *, boolean,
|
||||
boolean(*)(struct obj *), int *);
|
||||
extern boolean rider_corpse_revival(struct obj *, boolean);
|
||||
extern void force_decor(boolean);
|
||||
extern void deferred_decor(boolean);
|
||||
extern boolean menu_class_present(int);
|
||||
extern void add_valid_menu_class(int);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.7 flag.h $NHDT-Date: 1684791761 2023/05/22 21:42:41 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.217 $ */
|
||||
/* NetHack 3.7 flag.h $NHDT-Date: 1698264779 2023/10/25 20:12:59 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.224 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/*-Copyright (c) Michael Allison, 2006. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -290,6 +290,7 @@ struct instance_flags {
|
||||
boolean zerocomp; /* write zero-compressed save files */
|
||||
boolean rlecomp; /* alternative to zerocomp; run-length encoding
|
||||
* compression of levels when writing savefile */
|
||||
schar ice_rating; /* ice_descr()'s classification of ice terrain */
|
||||
schar prev_decor; /* 'mention_decor' just mentioned this */
|
||||
uchar num_pad_mode;
|
||||
uchar bouldersym; /* symbol for boulder display */
|
||||
|
||||
Reference in New Issue
Block a user