OSDN Git Service

サブウィンドウの「自分の周囲を表示」「ダンジョン全体図」でアップデートに不備
authormogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Fri, 24 Jan 2003 00:24:54 +0000 (00:24 +0000)
committermogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Fri, 24 Jan 2003 00:24:54 +0000 (00:24 +0000)
があり最新の状態を表示していなかったので修正。
また、handle_staff()やnotice_staff()の呼び方が統一されていなかったのでその辺を整理。

src/defines.h
src/dungeon.c
src/melee2.c
src/xtra1.c

index 7b0c014..b7f6595 100644 (file)
 #define PR_STUN         0x00002000L     /* Display Extra (Stun) */
 #define PR_HUNGER       0x00004000L     /* Display Extra (Hunger) */
 #define PR_STATUS       0x00008000L     /* Display Status Bar */
-#define PR_DUNGEON      0x00010000L     /* Display Extra (Blind) */
+#define PR_XXX0         0x00010000L     /* (unused) */
 #define PR_UHEALTH      0x00020000L     /* Display Uma Health Bar */
-#define PR_XXX1         0x00040000L     /* Display Extra (Afraid) */
-#define PR_XXX2         0x00080000L     /* Display Extra (Poisoned) */
+#define PR_XXX1         0x00040000L     /* (unused) */
+#define PR_XXX2         0x00080000L     /* (unused) */
 #define PR_STATE        0x00100000L     /* Display Extra (State) */
 #define PR_SPEED        0x00200000L     /* Display Extra (Speed) */
 #define PR_STUDY        0x00400000L     /* Display Extra (Study) */
index a3395c4..a9226a6 100644 (file)
@@ -5361,6 +5361,7 @@ msg_format("%^s
                        }
                }
 
+               /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
                handle_stuff();
        }
 
@@ -5433,18 +5434,11 @@ msg_format("%^s
                p_ptr->counter = FALSE;
                now_damaged = FALSE;
 
-               /* Notice stuff (if needed) */
-               if (p_ptr->notice) notice_stuff();
-
-               /* Update stuff (if needed) */
-               if (p_ptr->update) update_stuff();
-
-               /* Redraw stuff (if needed) */
-               if (p_ptr->redraw) redraw_stuff();
-
-               /* Redraw stuff (if needed) */
-               if (p_ptr->window) window_stuff();
+               /* Handle "p_ptr->notice" */
+               notice_stuff();
 
+               /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+               handle_stuff();
 
                /* Place the cursor on the player */
                move_cursor_relative(py, px);
@@ -5495,17 +5489,11 @@ msg_format("%s(%c)
                        inven_item_describe(item);
                        inven_item_optimize(item);
 
-                       /* Notice stuff (if needed) */
-                       if (p_ptr->notice) notice_stuff();
-
-                       /* Update stuff (if needed) */
-                       if (p_ptr->update) update_stuff();
+                       /* Handle "p_ptr->notice" */
+                       notice_stuff();
 
-                       /* Redraw stuff (if needed) */
-                       if (p_ptr->redraw) redraw_stuff();
-
-                       /* Redraw stuff (if needed) */
-                       if (p_ptr->window) window_stuff();
+                       /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+                       handle_stuff();
                }
 
 
@@ -5758,6 +5746,7 @@ msg_format("%s(%c)
                                world_player = FALSE;
                                p_ptr->energy_need = ENERGY_NEED();
 
+                               /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
                                handle_stuff();
                        }
                }
@@ -5879,14 +5868,8 @@ static void dungeon(bool load_game)
        /* Update monsters */
        p_ptr->update |= (PU_MONSTERS | PU_DISTANCE | PU_FLOW);
 
-       /* Update stuff */
-       update_stuff();
-
-       /* Redraw stuff */
-       redraw_stuff();
-
-       /* Redraw stuff */
-       window_stuff();
+       /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+       handle_stuff();
 
        /* Leave "xtra" mode */
        character_xtra = FALSE;
@@ -5897,17 +5880,11 @@ static void dungeon(bool load_game)
        /* Combine / Reorder the pack */
        p_ptr->notice |= (PN_COMBINE | PN_REORDER);
 
-       /* Notice stuff */
+       /* Handle "p_ptr->notice" */
        notice_stuff();
 
-       /* Update stuff */
-       update_stuff();
-
-       /* Redraw stuff */
-       redraw_stuff();
-
-       /* Window stuff */
-       window_stuff();
+       /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+       handle_stuff();
 
        /* Refresh */
        Term_fresh();
@@ -5996,17 +5973,11 @@ msg_print("
                /* Process the player */
                process_player();
 
-               /* Notice stuff */
-               if (p_ptr->notice) notice_stuff();
-
-               /* Update stuff */
-               if (p_ptr->update) update_stuff();
-
-               /* Redraw stuff */
-               if (p_ptr->redraw) redraw_stuff();
+               /* Handle "p_ptr->notice" */
+               notice_stuff();
 
-               /* Redraw stuff */
-               if (p_ptr->window) window_stuff();
+               /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+               handle_stuff();
 
                /* Hack -- Hilite the player */
                move_cursor_relative(py, px);
@@ -6020,17 +5991,11 @@ msg_print("
                /* Process all of the monsters */
                process_monsters();
 
-               /* Notice stuff */
-               if (p_ptr->notice) notice_stuff();
-
-               /* Update stuff */
-               if (p_ptr->update) update_stuff();
-
-               /* Redraw stuff */
-               if (p_ptr->redraw) redraw_stuff();
+               /* Handle "p_ptr->notice" */
+               notice_stuff();
 
-               /* Redraw stuff */
-               if (p_ptr->window) window_stuff();
+               /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+               handle_stuff();
 
                /* Hack -- Hilite the player */
                move_cursor_relative(py, px);
@@ -6045,17 +6010,11 @@ msg_print("
                /* Process the world */
                process_world();
 
-               /* Notice stuff */
-               if (p_ptr->notice) notice_stuff();
-
-               /* Update stuff */
-               if (p_ptr->update) update_stuff();
-
-               /* Redraw stuff */
-               if (p_ptr->redraw) redraw_stuff();
+               /* Handle "p_ptr->notice" */
+               notice_stuff();
 
-               /* Window stuff */
-               if (p_ptr->window) window_stuff();
+               /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+               handle_stuff();
 
                /* Hack -- Hilite the player */
                move_cursor_relative(py, px);
@@ -6637,18 +6596,11 @@ if (init_v_info()) quit("
                /* Process the level */
                dungeon(load_game);
 
-               /* Notice stuff */
-               if (p_ptr->notice) notice_stuff();
-
-               /* Update stuff */
-               if (p_ptr->update) update_stuff();
-
-               /* Redraw stuff */
-               if (p_ptr->redraw) redraw_stuff();
-
-               /* Window stuff */
-               if (p_ptr->window) window_stuff();
+               /* Handle "p_ptr->notice" */
+               notice_stuff();
 
+               /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+               handle_stuff();
 
                /* Cancel the target */
                target_who = 0;
index 52d9eb6..16354e4 100644 (file)
@@ -3502,6 +3502,9 @@ msg_print("
                        /* Redraw the new grid */
                        lite_spot(ny, nx);
 
+                       /* Update sub-windows */
+                       p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
+
                        if (p_ptr->riding == m_idx)
                        {
                                verify_panel();
@@ -3511,9 +3514,6 @@ msg_print("
 
                                /* Update the monsters */
                                p_ptr->update |= (PU_DISTANCE);
-
-                               /* Window stuff */
-                               p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
                        }
 
                        /* Possible disturb */
@@ -3699,6 +3699,9 @@ msg_format("%^s
        {
                /* Update some things */
                p_ptr->update |= (PU_VIEW | PU_LITE | PU_FLOW | PU_MONSTERS | PU_MON_LITE);
+
+               /* Window stuff */
+               p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
        }
 
        /* Notice changes in view */
index deceec8..78daa02 100644 (file)
@@ -5731,11 +5731,6 @@ void redraw_stuff(void)
                prt_dungeon();
        }
 
-       if (p_ptr->redraw & (PR_DUNGEON))
-       {
-               p_ptr->redraw &= ~(PR_DUNGEON);
-       }
-
        if (p_ptr->redraw & (PR_EQUIPPY))
        {
                p_ptr->redraw &= ~(PR_EQUIPPY);