OSDN Git Service

キャラクター生成中やオプション設定中に'?'を押すとヘルプファイルの中の
[hengband/hengband.git] / src / files.c
index c968483..d1a8092 100644 (file)
@@ -1040,46 +1040,6 @@ static cptr process_pref_file_expr(char **sp, char *fp)
 
 
 /*
- *  Process line for auto picker/destroyer.
- */
-static errr process_pickpref_file_line(char *buf)
-{
-       autopick_type entry;
-       int i;
-
-       if (max_autopick == MAX_AUTOPICK)
-               return 1;
-       
-       /* Nuke illegal char */
-       for(i = 0; buf[i]; i++)
-       {
-#ifdef JP
-               if (iskanji(buf[i]))
-               {
-                       i++;
-                       continue;
-               }
-#endif
-               if (isspace(buf[i]) && buf[i] != ' ')
-                       break;
-       }
-       buf[i] = 0;
-       
-       if (!autopick_new_entry(&entry, buf)) return 0;
-
-       /* Already has the same entry? */ 
-       for(i = 0; i < max_autopick; i++)
-               if(!strcmp(entry.name, autopick_list[i].name)
-                  && entry.flag[0] == autopick_list[i].flag[0]
-                  && entry.flag[1] == autopick_list[i].flag[1]) return 0;
-
-       autopick_list[max_autopick++] = entry;
-       return 0;
-}
-
-
-
-/*
  * Open the "user pref file" and parse it.
  */
 static errr process_pref_file_aux(cptr name, bool read_pickpref)
@@ -1632,7 +1592,7 @@ static struct
        {29,  5, 21, "Weight"},
        {29,  6, 21, "Social Class"},
        {29,  7, 21, "Align"},
-       {29, 14, 21, "Constraction"},
+       {29, 14, 21, "Construction"},
 };
 #endif
 
@@ -2797,7 +2757,6 @@ static void tim_player_flags(u32b flgs[TR_FLAG_SIZE], bool im_and_res)
 /* Mode flags for displaying player flags */
 #define DP_CURSE   0x01
 #define DP_IMM     0x02
-#define DP_ESP     0x04
 #define DP_WP      0x08
 
 
@@ -3004,35 +2963,6 @@ static void display_flag_aux(int row, int col, cptr header,
                         if ((mode & DP_CURSE) && (o_ptr->curse_flags & TRC_PERMA_CURSE))
                                 c_put_str(TERM_WHITE, "*", row, col);
                 }
-                else if (mode & DP_ESP)
-                {
-                        if (have_flag(flgs, TR_TELEPATHY))
-                                c_put_str(TERM_WHITE, "*", row, col);
-                        else if (have_flag(flgs, TR_ESP_EVIL))
-                                c_put_str(TERM_L_DARK, "*", row, col);
-                        else if (have_flag(flgs, TR_ESP_NONLIVING))
-                                c_put_str(TERM_BLUE, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_GOOD))
-                                c_put_str(TERM_WHITE, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_UNDEAD))
-                                c_put_str(TERM_L_DARK, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_DEMON))
-                                c_put_str(TERM_RED, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_DRAGON))
-                                c_put_str(TERM_GREEN, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_HUMAN))
-                                c_put_str(TERM_YELLOW, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_UNIQUE))
-                                c_put_str(TERM_VIOLET, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_ANIMAL))
-                                c_put_str(TERM_L_GREEN, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_ORC))
-                                c_put_str(TERM_L_UMBER, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_TROLL))
-                                c_put_str(TERM_SLATE, "+", row, col);
-                        else if (have_flag(flgs, TR_ESP_GIANT))
-                                c_put_str(TERM_ORANGE, "+", row, col);
-                }
                 else
                 {
                         if (have_flag(flgs, flag1))
@@ -3172,7 +3102,7 @@ display_flag_aux(row+0, col, "
 display_flag_aux(row+1, col, "ÂÑËãáã    :", TR_FREE_ACT, &f, 0);
 display_flag_aux(row+2, col, "Æ©ÌÀÂλëǧ:", TR_SEE_INVIS, &f, 0);
 display_flag_aux(row+3, col, "·Ð¸³ÃÍÊÝ»ý:", TR_HOLD_LIFE, &f, 0);
-display_flag_aux(row+4, col, "¥Æ¥ì¥Ñ¥·¡¼:", TR_TELEPATHY, &f, DP_ESP);
+display_flag_aux(row+4, col, "·Ù¹ð      :", TR_WARNING, &f, 0);
 display_flag_aux(row+5, col, "Ãپò½    :", TR_SLOW_DIGEST, &f, 0);
 display_flag_aux(row+6, col, "µÞ²óÉü    :", TR_REGEN, &f, 0);
 display_flag_aux(row+7, col, "ÉâÍ·      :", TR_FEATHER, &f, 0);
@@ -3183,7 +3113,7 @@ display_flag_aux(row+9, col, "
        display_flag_aux(row+1, col, "FreeAction:", TR_FREE_ACT, &f, 0);
        display_flag_aux(row+2, col, "SeeInvisi.:", TR_SEE_INVIS, &f, 0);
        display_flag_aux(row+3, col, "Hold Life :", TR_HOLD_LIFE, &f, 0);
-       display_flag_aux(row+4, col, "Telepathy :", TR_TELEPATHY, &f, DP_ESP);
+       display_flag_aux(row+4, col, "Warning   :", TR_WARNING, &f, 0);
        display_flag_aux(row+5, col, "SlowDigest:", TR_SLOW_DIGEST, &f, 0);
        display_flag_aux(row+6, col, "Regene.   :", TR_REGEN, &f, 0);
        display_flag_aux(row+7, col, "Levitation:", TR_FEATHER, &f, 0);
@@ -3215,7 +3145,7 @@ static void display_player_other_flag_info(void)
        /*** Set 1 ***/
 
        row = 3;
-       col = 2;
+       col = 1;
 
        display_player_equippy(row-2, col+12, DP_WP);
 
@@ -3336,7 +3266,7 @@ static void display_player_other_flag_info(void)
        /*** Set 3 ***/
 
        row = 3;
-       col = col + 12 + 18;
+       col = col + 12 + 17;
 
        display_player_equippy(row-2, col+14, 0);
 
@@ -3352,15 +3282,15 @@ static void display_player_other_flag_info(void)
 
         display_flag_aux(row+ 7, col, "¾èÇÏ        :", TR_RIDING, &f, 0);
         display_flag_aux(row+ 8, col, "ÅêÚ³        :", TR_THROW, &f, 0);
-        display_flag_aux(row+ 9, col, "È¿¥Æ¥ì¥Ý¡¼¥È:", TR_NO_TELE, &f, 0);
-        display_flag_aux(row+10, col, "ȿËâË¡      :", TR_NO_MAGIC, &f, 0);
-        display_flag_aux(row+11, col, "¾ÃÈñËâÎϸº¾¯:", TR_DEC_MANA, &f, 0);
-        display_flag_aux(row+12, col, "·Ù¹ð        :", TR_WARNING, &f, 0);
-        display_flag_aux(row+13, col, "½ËÊ¡        :", TR_BLESSED, &f, 0);
-        display_flag_aux(row+15, col, "·Ð¸³Ã͸º¾¯  :", TR_DRAIN_EXP, &f, 0);
-        display_flag_aux(row+16, col, "Íð¥Æ¥ì¥Ý¡¼¥È:", TR_TELEPORT, &f, 0);
-        display_flag_aux(row+17, col, "È¿´¶        :", TR_AGGRAVATE, &f, 0);
-        display_flag_aux(row+18, col, "ÂÀ¸Å¤Î±åÇ°  :", TR_TY_CURSE, &f, 0);
+        display_flag_aux(row+ 9, col, "½ËÊ¡        :", TR_BLESSED, &f, 0);
+        display_flag_aux(row+10, col, "ȿ¥Æ¥ì¥Ý¡¼¥È:", TR_NO_TELE, &f, 0);
+        display_flag_aux(row+11, col, "È¿ËâË¡      :", TR_NO_MAGIC, &f, 0);
+        display_flag_aux(row+12, col, "¾ÃÈñËâÎϸº¾¯:", TR_DEC_MANA, &f, 0);
+
+        display_flag_aux(row+14, col, "·Ð¸³Ã͸º¾¯  :", TR_DRAIN_EXP, &f, 0);
+        display_flag_aux(row+15, col, "Íð¥Æ¥ì¥Ý¡¼¥È:", TR_TELEPORT, &f, 0);
+        display_flag_aux(row+16, col, "È¿´¶        :", TR_AGGRAVATE, &f, 0);
+        display_flag_aux(row+17, col, "ÂÀ¸Å¤Î±åÇ°  :", TR_TY_CURSE, &f, 0);
 #else
         display_flag_aux(row+ 0, col, "Add Blows   :", TR_BLOWS, &f, 0);
         display_flag_aux(row+ 1, col, "Add Tunnel  :", TR_TUNNEL, &f, 0);
@@ -3371,15 +3301,15 @@ static void display_player_other_flag_info(void)
 
         display_flag_aux(row+ 7, col, "Riding      :", TR_RIDING, &f, 0);
         display_flag_aux(row+ 8, col, "Throw       :", TR_THROW, &f, 0);
-        display_flag_aux(row+ 9, col, "No Teleport :", TR_NO_TELE, &f, 0);
-        display_flag_aux(row+10, col, "Anti Magic  :", TR_NO_MAGIC, &f, 0);
-        display_flag_aux(row+11, col, "Econom. Mana:", TR_DEC_MANA, &f, 0);
-        display_flag_aux(row+12, col, "Warning     :", TR_WARNING, &f, 0);
-        display_flag_aux(row+13, col, "Blessed     :", TR_BLESSED, &f, 0);
-        display_flag_aux(row+15, col, "Drain Exp   :", TR_DRAIN_EXP, &f, 0);
-        display_flag_aux(row+16, col, "Rnd.Teleport:", TR_TELEPORT, &f, 0);
-        display_flag_aux(row+17, col, "Aggravate   :", TR_AGGRAVATE, &f, 0);
-        display_flag_aux(row+18, col, "TY Curse    :", TR_TY_CURSE, &f, 0);
+        display_flag_aux(row+ 9, col, "Blessed     :", TR_BLESSED, &f, 0);
+        display_flag_aux(row+10, col, "No Teleport :", TR_NO_TELE, &f, 0);
+        display_flag_aux(row+11, col, "Anti Magic  :", TR_NO_MAGIC, &f, 0);
+        display_flag_aux(row+12, col, "Econom. Mana:", TR_DEC_MANA, &f, 0);
+
+        display_flag_aux(row+14, col, "Drain Exp   :", TR_DRAIN_EXP, &f, 0);
+        display_flag_aux(row+15, col, "Rnd.Teleport:", TR_TELEPORT, &f, 0);
+        display_flag_aux(row+16, col, "Aggravate   :", TR_AGGRAVATE, &f, 0);
+        display_flag_aux(row+17, col, "TY Curse    :", TR_TY_CURSE, &f, 0);
 #endif
 
 }
@@ -4120,7 +4050,8 @@ errr make_character_dump(FILE *fff)
        }
 
        fprintf(fff, "\n");
-       /* Display history */
+
+       /* Display flags (part 1) */
        display_player(2);
 
        /* Dump part of the screen */
@@ -4149,6 +4080,37 @@ errr make_character_dump(FILE *fff)
                fprintf(fff, "%s\n", buf);
        }
 
+       fprintf(fff, "\n");
+
+       /* Display flags (part 2) */
+       display_player(3);
+
+       /* Dump part of the screen */
+       for (y = 1; y < 22; y++)
+       {
+               /* Dump each row */
+               for (x = 0; x < 79; x++)
+               {
+                       /* Get the attr/char */
+                       (void)(Term_what(x, y, &a, &c));
+
+                       /* Dump it (Ignore equippy tile graphic) */
+                       if (a < 128)
+                               buf[x] = c;
+                       else
+                               buf[x] = ' ';
+               }
+
+               /* End the string */
+               buf[x] = '\0';
+
+               /* Kill trailing spaces */
+               while ((x > 0) && (buf[x-1] == ' ')) buf[--x] = '\0';
+
+               /* End the row */
+               fprintf(fff, "%s\n", buf);
+       }
+
        for (i = 0; (unsigned int) i < (p_ptr->count / 80); i++)
                fprintf(fff, " ");
        fprintf(fff, "\n");
@@ -4875,14 +4837,14 @@ errr file_character(cptr name, bool full)
 
                /* Build query */
 #ifdef JP
-(void)sprintf(out_val, "¸½Â¸¤¹¤ë¥Õ¥¡¥¤¥ë %s ¤Ë¾å½ñ¤­¤·¤Þ¤¹¤«? ", buf);
+                (void)sprintf(out_val, "¸½Â¸¤¹¤ë¥Õ¥¡¥¤¥ë %s ¤Ë¾å½ñ¤­¤·¤Þ¤¹¤«? ", buf);
 #else
                (void)sprintf(out_val, "Replace existing file %s? ", buf);
 #endif
 
 
                /* Ask */
-               if (get_check(out_val)) fd = -1;
+               if (get_check_strict(out_val, CHECK_NO_HISTORY)) fd = -1;
        }
 
        /* Open the non-existing file */
@@ -4893,12 +4855,12 @@ errr file_character(cptr name, bool full)
        {
                /* Message */
 #ifdef JP
-msg_format("¥­¥ã¥é¥¯¥¿¾ðÊó¤Î¥Õ¥¡¥¤¥ë¤Ø¤Î½ñ¤­½Ð¤·¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡ª");
+                prt("¥­¥ã¥é¥¯¥¿¾ðÊó¤Î¥Õ¥¡¥¤¥ë¤Ø¤Î½ñ¤­½Ð¤·¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡ª", 0, 0);
 #else
-               msg_format("Character dump failed!");
+               prt("Character dump failed!", 0, 0);
 #endif
 
-               msg_print(NULL);
+                (void)inkey();
 
                /* Error */
                return (-1);
@@ -4926,57 +4888,6 @@ msg_print("
 }
 
 
-typedef struct file_tag
-{
-       char name[32];
-       int line_number;
-} file_tag;
-
-
-typedef struct file_tags
-{
-       file_tag tags[64];
-       int index;
-} file_tags;
-
-
-static void add_tag(file_tags *the_tags, cptr name, int line)
-{
-       if (the_tags->index < 64)
-       {
-               file_tag *tag = &(the_tags->tags[the_tags->index]);
-
-               /* Set the name and end it with '\0' */
-               strncpy(tag->name, name, 31);
-               tag->name[31] = '\0';
-
-               /* Set the line-number */
-               tag->line_number = line;
-
-               /* Increase the number of tags */
-               the_tags->index++;
-       }
-}
-
-
-static int get_line(file_tags *the_tags, cptr name)
-{
-       int i;
-
-       /* Search for the tag */
-       for (i = 0; i < the_tags->index; i++)
-       {
-               if (streq(the_tags->tags[i].name, name))
-               {
-                       return the_tags->tags[i].line_number;
-               }
-       }
-
-       /* Not found */
-       return 0;
-}
-
-
 /*
  * Recursive file perusal.
  *
@@ -5047,9 +4958,6 @@ bool show_file(bool show_version, cptr name, cptr what, int line, int mode)
        /* Sub-menu information */
        char hook[68][32];
 
-       /* Tags for in-file references */
-       file_tags tags;
-
        bool reverse = (line < 0);
 
        int wid, hgt, rows;
@@ -5072,9 +4980,6 @@ bool show_file(bool show_version, cptr name, cptr what, int line, int mode)
                hook[i][0] = '\0';
        }
 
-       /* No tags yet */
-       tags.index = 0;
-
        /* Copy the filename */
        strcpy(filename, name);
 
@@ -5218,7 +5123,7 @@ msg_format("'%s'
                        else if (str[6] == '<')
                        {
                                str[strlen(str) - 1] = '\0';
-                               add_tag(&tags, str + 7, next);
+                                if (tag && streq(str + 7, tag)) line = next;
                        }
 
                        /* Skip this */
@@ -5235,9 +5140,6 @@ msg_format("'%s'
        /* start from bottom when reverse mode */
        if (line == -1) line = ((size-1)/rows)*rows;
 
-       /* Go to the tagged line */
-       if (tag) line = get_line(&tags, tag);
-
        /* Display the file */
        while (TRUE)
        {