OSDN Git Service

wiz_dark()で間違えて外周部にCAVE_UNSAFEを立てていたので修正.
authornothere <nothere@0568b783-4c39-0410-ac80-bf13821ea2a2>
Tue, 15 Jul 2003 06:13:15 +0000 (06:13 +0000)
committernothere <nothere@0568b783-4c39-0410-ac80-bf13821ea2a2>
Tue, 15 Jul 2003 06:13:15 +0000 (06:13 +0000)
src/cave.c

index eb4b4f7..8992417 100644 (file)
@@ -4845,9 +4845,9 @@ void wiz_dark(void)
 
 
        /* Forget every grid */
 
 
        /* Forget every grid */
-       for (y = 0; y < cur_hgt; y++)
+       for (y = 1; y < cur_hgt - 1; y++)
        {
        {
-               for (x = 0; x < cur_wid; x++)
+               for (x = 1; x < cur_wid - 1; x++)
                {
                        cave_type *c_ptr = &cave[y][x];
 
                {
                        cave_type *c_ptr = &cave[y][x];
 
@@ -4857,6 +4857,20 @@ void wiz_dark(void)
                }
        }
 
                }
        }
 
+       /* Forget every grid on horizontal edge */
+       for (x = 0; x < cur_wid; x++)
+       {
+               cave[0][x].info &= ~(CAVE_MARK);
+               cave[cur_hgt - 1][x].info &= ~(CAVE_MARK);
+       }
+
+       /* Forget every grid on vertical edge */
+       for (y = 1; y < (cur_hgt - 1); y++)
+       {
+               cave[y][0].info &= ~(CAVE_MARK);
+               cave[y][cur_wid - 1].info &= ~(CAVE_MARK);
+       }
+
        /* Forget all objects */
        for (i = 1; i < o_max; i++)
        {
        /* Forget all objects */
        for (i = 1; i < o_max; i++)
        {