more fighting boulders (trunk only)
Followup to yesterday's "you attack thin air" fix for when there's a boulder at the target location: if wielding a pick-axe or mattock and you use F to explicitly try to attack a boulder, dig the boulder to break it. Also, treat statues like boulders: F at them gets "you harmlessly attack a statue" for non-pick weapon, or digs/breaks statue when wielding a pick. Classified as a new feature in the fixes file.
This commit is contained in:
@@ -369,6 +369,7 @@ C and #name commands are now same and use menu to choose monster vs object
|
||||
hallucination provides partial protection against gaze attacks
|
||||
attempting to read "dull" spellbook might cause hero to fall asleep
|
||||
dipping prompt is more precise
|
||||
using F to attack boulder or statue while wielding pick digs/breaks target
|
||||
|
||||
|
||||
Platform- and/or Interface-Specific New Features
|
||||
|
||||
15
src/hack.c
15
src/hack.c
@@ -1205,8 +1205,23 @@ domove()
|
||||
(glyph_is_invisible(levl[x][y].glyph) && !context.nopick)) {
|
||||
struct obj *boulder = sobj_at(BOULDER, x, y);
|
||||
boolean explo = (Upolyd && attacktype(youmonst.data, AT_EXPL));
|
||||
int glyph = glyph_at(x, y); /* might be monster */
|
||||
char buf[BUFSZ];
|
||||
|
||||
/* if a statue is displayed at the target location,
|
||||
player is attempting to attack it [and boulder
|
||||
handlng below is suitable for handling that] */
|
||||
if (glyph_is_statue(glyph) ||
|
||||
(Hallucination && glyph_is_monster(glyph)))
|
||||
boulder = sobj_at(STATUE, x, y);
|
||||
|
||||
/* force fight at boulder (or statue) while wielding pick:
|
||||
start digging to break the boulder (or statue) */
|
||||
if (boulder && context.forcefight && uwep && is_pick(uwep)) {
|
||||
(void)use_pick_axe2(uwep);
|
||||
return;
|
||||
}
|
||||
|
||||
if (boulder)
|
||||
Strcpy(buf, ansimpleoname(boulder));
|
||||
else if (!Underwater)
|
||||
|
||||
Reference in New Issue
Block a user