OSDN Git Service

階数の表示色を雰囲気によって変える仕様をSAngから移植する楠瀬さんのパッチ。
authormogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Tue, 16 Sep 2003 15:54:37 +0000 (15:54 +0000)
committermogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Tue, 16 Sep 2003 15:54:37 +0000 (15:54 +0000)
src/dungeon.c
src/xtra1.c

index 9998fe9..cb8fa04 100644 (file)
@@ -1925,8 +1925,17 @@ static void process_world(void)
            !((quest_num == QUEST_OBERON) || (quest_num == QUEST_SERPENT) ||
              !(quest[quest_num].flags & QUEST_FLAG_PRESET)))) &&
            !p_ptr->inside_battle)
+       {
+               /* Announce feeling */
                do_cmd_feeling();
 
+               /* Update the level indicator */
+               p_ptr->redraw |= (PR_DEPTH);
+
+               /* Disturb */
+               if (disturb_minor) disturb(0, 0);
+       }
+
        if (p_ptr->inside_battle && !p_ptr->leaving)
        {
 
index 62c3c26..2068077 100644 (file)
@@ -930,6 +930,7 @@ static void prt_depth(void)
 {
        char depths[32];
        int wid, hgt, row_depth, col_depth;
+       int attr = TERM_WHITE;
 
        Term_get_size(&wid, &hgt);
        col_depth = wid + COL_DEPTH;
@@ -971,8 +972,24 @@ sprintf(depths, "%d 
 
        }
 
+       /* Get color of level based on feeling  -JSV- */
+       if (dun_level &&
+           (turn - old_turn >= (150 - dun_level)*TURNS_PER_TICK || cheat_xtra))
+       {
+               if (feeling ==  1) attr = TERM_VIOLET;
+               if (feeling ==  2) attr = TERM_RED;
+               if (feeling ==  3) attr = TERM_L_RED;
+               if (feeling ==  4) attr = TERM_ORANGE;
+               if (feeling ==  5) attr = TERM_ORANGE;
+               if (feeling ==  6) attr = TERM_YELLOW;
+               if (feeling ==  7) attr = TERM_YELLOW;
+               if (feeling ==  8) attr = TERM_WHITE;
+               if (feeling ==  9) attr = TERM_WHITE;
+               if (feeling == 10) attr = TERM_L_WHITE;
+       }
+
        /* Right-Adjust the "depth", and clear old values */
-       prt(format("%7s", depths), row_depth, col_depth);
+       c_prt(attr, format("%7s", depths), row_depth, col_depth);
 }