]> granicus.if.org Git - nethack/commitdiff
water flow into pits (trunk only)
authornethack.allison <nethack.allison>
Tue, 8 Jun 2004 11:06:44 +0000 (11:06 +0000)
committernethack.allison <nethack.allison>
Tue, 8 Jun 2004 11:06:44 +0000 (11:06 +0000)
water should flow into chasms from Drum of Earthquake.
Exploding wands of digging had been handled in the trunk earlier.

doc/fixes35.0
src/apply.c
src/music.c

index 17265ef4addb8913655c35a725472f2dd31559ee..1e9beea2f53fa4bd2339249dacd2845b1a6b4145 100644 (file)
@@ -38,7 +38,7 @@ don't place randomly-placed aquatic monsters in lava on special levels
 hiding monsters don't hide under cockatrice/chickatrice corpses
 "sound" option renamed to "acoustics"
 deafness now a full-fledged attribute
-water should flow into pits from broken wand of digging
+water should flow into pits from broken wand of digging and drum of earthquake
 objects that fall thru trapdoors, et al, can break on impact
 support engraving in blood in special level files
 many instances of physical damage were not taking Half_physical_damage
index 81589770cf49f8db3939d9b4da048ab69ead9e0b..a31ce2b9f902cd076cae261a4d949c7339c549ad 100644 (file)
@@ -2822,6 +2822,11 @@ do_break_wand(obj)
                    watch_dig((struct monst *)0, x, y, TRUE);
                    if (*in_rooms(x,y,SHOPBASE)) shop_damage = TRUE;
                }
+               /*
+                * Let liquid flow into the newly created pits.
+                * Adjust corresponding code in music.c for
+                * drum of earthquake if you alter this sequence.
+                */
                typ = fillholetyp(x,y); 
                if (typ != ROOM) {
                        levl[x][y].typ = typ;
index e0412a5813d7b6913cf02710d3a1c5326398946c..766dd57c8aad92e3e71343512758ea937dfee393 100644 (file)
@@ -221,6 +221,7 @@ int force;
        struct obj *otmp;
        struct trap *chasm;
        int start_x, start_y, end_x, end_y;
+       schar filltype;
 
        start_x = u.ux - (force * 2);
        start_y = u.uy - (force * 2);
@@ -278,6 +279,16 @@ do_pit:                chasm = maketrap(x,y,PIT);
                    chasm->tseen = 1;
 
                    levl[x][y].doormask = 0;
+                   /*
+                    * Let liquid flow into the newly created chasm.
+                    * Adjust corresponding code in apply.c for
+                    * exploding wand of digging if you alter this sequence.
+                    */
+                   filltype = fillholetyp(x,y);
+                   if (filltype != ROOM) {
+                       levl[x][y].typ = filltype;
+                       liquid_flow(x, y, filltype, chasm, (char *)0);
+                   }
 
                    mtmp = m_at(x,y);