OSDN Git Service

地震が起きたときに未感知のトラップが勝手に感知済みになっていたので修正して
authormogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Sat, 7 Sep 2002 17:05:51 +0000 (17:05 +0000)
committermogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Sat, 7 Sep 2002 17:05:51 +0000 (17:05 +0000)
何も影響しないようにした。1.3.0までは未感知のトラップは問答無用で消滅して
いたが、感知済みトラップは壁に潰されない限り消えないので、後者に合せて修正した。

src/spells2.c

index 60593e1..f9a1254 100644 (file)
@@ -5536,10 +5536,7 @@ bool earthquake(int cy, int cx, int r)
                        c_ptr = &cave[yy][xx];
 
                        /* Lose room and vault */
-                       c_ptr->info &= ~(CAVE_ROOM | CAVE_ICKY | CAVE_UNSAFE | CAVE_OBJECT );
-
-                        /* Clear mimic type */
-                        c_ptr->mimic = 0;
+                       c_ptr->info &= ~(CAVE_ROOM | CAVE_ICKY | CAVE_UNSAFE);
 
                        /* Lose light and knowledge */
                        c_ptr->info &= ~(CAVE_GLOW | CAVE_MARK);
@@ -5903,6 +5900,12 @@ msg_format("%^s
                                /* Delete objects */
                                delete_object(yy, xx);
 
+                                /* Clear mimic type */
+                                c_ptr->mimic = 0;
+
+                                /* Clear mirror, runes flag */
+                                c_ptr->info &= ~CAVE_OBJECT;
+
                                /* Wall (or floor) type */
                                t = (floor ? randint0(100) : 200);