/*
- * 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)
{29, 5, 21, "Weight"},
{29, 6, 21, "Social Class"},
{29, 7, 21, "Align"},
- {29, 14, 21, "Constraction"},
+ {29, 14, 21, "Construction"},
};
#endif
/* Mode flags for displaying player flags */
#define DP_CURSE 0x01
#define DP_IMM 0x02
-#define DP_ESP 0x04
#define DP_WP 0x08
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))
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);
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);
/*** Set 1 ***/
row = 3;
- col = 2;
+ col = 1;
display_player_equippy(row-2, col+12, DP_WP);
/*** Set 3 ***/
row = 3;
- col = col + 12 + 18;
+ col = col + 12 + 17;
display_player_equippy(row-2, col+14, 0);
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);
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
}
}
fprintf(fff, "\n");
- /* Display history */
+
+ /* Display flags (part 1) */
display_player(2);
/* Dump part of the screen */
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");
/* 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 */
{
/* 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);
}
-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.
*
/* Sub-menu information */
char hook[68][32];
- /* Tags for in-file references */
- file_tags tags;
-
bool reverse = (line < 0);
int wid, hgt, rows;
hook[i][0] = '\0';
}
- /* No tags yet */
- tags.index = 0;
-
/* Copy the filename */
strcpy(filename, name);
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 */
/* 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)
{