couple of #wizintrinsic fixes
When #wizinstrinsic was expanded to be able to set any timed attribute, some that need more than just a timeout counter were left inconsistent. 1) Timed Flying wasn't blocked by levitation, and existing flight wasn't becoming blocked by timed levitation. Also, eventual flight timeout wasn't updating the status line, so false 'Fly' condition remained shown until a status update happened for some other reason. 2) Setting timer for Warn_of_mon didn't set up any type of monster to warn about so wouldn't do anything. This sets that to grid bug unless already set due to polymorph form or artifact that warns. The end.c portion is just a bit of formatting.
This commit is contained in:
14
src/cmd.c
14
src/cmd.c
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.6 cmd.c $NHDT-Date: 1541631031 2018/11/07 22:50:31 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.299 $ */
|
||||
/* NetHack 3.6 cmd.c $NHDT-Date: 1541902950 2018/11/11 02:22:30 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.301 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/*-Copyright (c) Robert Patrick Rankin, 2013. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -1423,7 +1423,19 @@ wiz_intrinsic(VOID_ARGS)
|
||||
make_vomiting(newtimeout, FALSE);
|
||||
pline1(buf);
|
||||
break;
|
||||
case WARN_OF_MON:
|
||||
if (!Warn_of_mon) {
|
||||
context.warntype.speciesidx = PM_GRID_BUG;
|
||||
context.warntype.species
|
||||
= &mons[context.warntype.speciesidx];
|
||||
}
|
||||
goto def_feedback;
|
||||
case LEVITATION:
|
||||
case FLYING:
|
||||
float_vs_flight();
|
||||
/*FALLTHRU*/
|
||||
default:
|
||||
def_feedback:
|
||||
pline("Timeout for %s %s %d.", propertynames[i].prop_name,
|
||||
oldtimeout ? "increased by" : "set to", amt);
|
||||
incr_itimeout(&u.uprops[p].intrinsic, amt);
|
||||
|
||||
Reference in New Issue
Block a user