From: Pasi Kallinen Date: Sun, 29 Mar 2015 14:44:59 +0000 (+0300) Subject: Kicking a grave may topple the gravestone X-Git-Tag: NetHack-3.6.0_RC01~517 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6c58e7f03fecefc7f0ddd666d0f7df2b867fa408;p=nethack Kicking a grave may topple the gravestone ...with similar alignment hit as when digging up a grave. --- diff --git a/doc/fixes35.0 b/doc/fixes35.0 index 0d7fb3cde..6d859ff4d 100644 --- a/doc/fixes35.0 +++ b/doc/fixes35.0 @@ -892,6 +892,7 @@ add messages for trying to pick up some terrain features boomerang makes noise when hitting a sink non-pet rust monsters would eat rust-proofed non-digestibles but ignore those non-digestibles otherwise +kicking a grave may topple the gravestone Platform- and/or Interface-Specific Fixes diff --git a/src/dokick.c b/src/dokick.c index 645eb5cf2..d558bdd38 100644 --- a/src/dokick.c +++ b/src/dokick.c @@ -991,7 +991,28 @@ dokick() exercise(A_DEX, TRUE); return(1); } - if(IS_GRAVE(maploc->typ) || maploc->typ == IRONBARS) + if (IS_GRAVE(maploc->typ)) { + if(Levitation) goto dumb; + if (rn2(4)) goto ouch; + exercise(A_WIS, FALSE); + if (Role_if(PM_ARCHEOLOGIST) || + Role_if(PM_SAMURAI) || + ((u.ualign.type == A_LAWFUL) && (u.ualign.record > -10))) { + adjalign(-sgn(u.ualign.type)); + } + maploc->typ = ROOM; + maploc->doormask = 0; + (void) mksobj_at(ROCK, x,y, TRUE, FALSE); + del_engr_at(x,y); + if (Blind) + pline("Crack! %s broke!", Something); + else { + pline_The("headstone topples over and breaks!"); + newsym(x,y); + } + return 1; + } + if(maploc->typ == IRONBARS) goto ouch; if(IS_TREE(maploc->typ)) { struct obj *treefruit;