"敵の急所にめがけて矢を放つ。成功すると敵を一撃死させる。失敗すると1ダメージ。",
"全てのモンスターに高威力を発揮する矢を放つ。反動による副次効果を受ける。",
#else
- "Concentrate your mind fot shooting.",
- "Shot an allow with brightness.",
+ "Concentrate your mind for shooting.",
+ "Shoot a glowing arrow effective against light-sensitive foes.",
"Blink after shooting.",
- "Shot an allow able to shatter traps.",
- "Deals extra damege of fire.",
- "Shot an allow able to shatter rocks.",
- "Deals extra damege of ice.",
+ "Shoot an arrow able to shatter traps.",
+ "Deals extra damage of fire.",
+ "Shoot an arrow able to shatter rocks.",
+ "Deals extra damage of ice.",
"An allow rushes away a target.",
"An allow pierces some monsters.",
"Deals more damage to good monsters.",
"Deals more damage to evil monsters.",
- "An allow explodes when it hits a monster.",
+ "Shoot an arrow that explodes when it hits a monster.",
"Shot allows twice.",
- "Deals extra damege of lightning.",
+ "Deals extra damage of lightning.",
"Deals quick death or 1 damage.",
"Deals great damage to all monsters, and some side effects to you.",
#endif
{ 48, 7, "セイントスターアロー" },
#else
{ 1, 0, "Concentration" },
- { 2, 1, "Flush Arrow" },
+ { 2, 1, "Flash Arrow" },
{ 3, 1, "Shoot & Away" },
{ 5, 1, "Disarm Shot" },
{ 8, 2, "Fire Shot" },
/* Access the available spell */
spell = snipe_powers[i];
if (spell.min_lev > plev) continue;
- if (spell.mana_cost > (int)sniper_ptr->concent) continue;
sprintf(psi_desc, " %c) %-30s%2d %4d",
I2A(i), spell.name, spell.min_lev, spell.mana_cost);
- term_putstr(x, y + i + 1, -1, TERM_WHITE, psi_desc);
+ if (spell.mana_cost > (int)sniper_ptr->concent)
+ term_putstr(x, y + i + 1, -1, TERM_SLATE, psi_desc);
+ else
+ term_putstr(x, y + i + 1, -1, TERM_WHITE, psi_desc);
}
return;
}
/* Show the list */
if (!redraw)
{
- char psi_desc[80];
+ char psi_index[6];
+ char psi_desc[75];
redraw = TRUE;
if (!only_browse) screen_save();
/* Display a list of spells */
prt("", y, x);
put_str(_("名前", "Name"), y, x + 5);
- if (only_browse) put_str(_("Lv 集中度", "Lv Pow"), y, x + 35);
+ put_str(_("Lv 集中度", "Lv Pow"), y, x + 35);
/* Dump the spells */
for (i = 0; i < MAX_SNIPE_POWERS; i++)
{
+ term_color_type tcol = TERM_WHITE;
term_erase(x, y + i + 1, 255);
/* Access the spell */
spell = snipe_powers[i];
- if (spell.min_lev > plev) continue;
- if (!only_browse && (spell.mana_cost > (int)sniper_ptr->concent)) continue;
/* Dump the spell --(-- */
- if (only_browse)
- sprintf(psi_desc, " %c) %-30s%2d %4d",
- I2A(i), spell.name, spell.min_lev, spell.mana_cost);
+ if (spell.min_lev > plev)
+ sprintf(psi_index, " ) ");
else
- sprintf(psi_desc, " %c) %-30s", I2A(i), spell.name);
- prt(psi_desc, y + i + 1, x);
+ sprintf(psi_index, " %c) ", I2A(i));
+
+ sprintf(psi_desc, "%-30s%2d %4d",
+ spell.name, spell.min_lev, spell.mana_cost);
+
+ if (spell.min_lev > plev)
+ tcol = TERM_SLATE;
+ else if (spell.mana_cost > (int)sniper_ptr->concent)
+ tcol = TERM_L_BLUE;
+
+ term_putstr(x, y + i + 1, -1, tcol, psi_index);
+ term_putstr(x + 5, y + i + 1, -1, tcol, psi_desc);
}
/* Clear the bottom line */