{
/* Ego objects */
if (object_is_ego(o_ptr))
-
{
if (object_is_weapon_armour_ammo(o_ptr))
{
/* Don't use the object description */
name = FALSE;
- if (object_is_weapon_armour_ammo(o_ptr))
- {
- /* Restrict to 'common' equipments */
- if (!object_is_rare(o_ptr)) ADD_FLG(FLG_COMMON);
- }
+ /* Restrict to 'common' equipments */
+ if (!object_is_rare(o_ptr)) ADD_FLG(FLG_COMMON);
}
ADD_FLG(FLG_EGO);
return format("%s.prf", namebase);
case PT_WITH_PNAME:
- return format("%s-%s.prf", namebase, player_name);
+ return format("%s-%s.prf", namebase, player_base);
default:
return NULL;
}
}
- /*** Rere equpiments ***/
+ /*** Rere equipments ***/
if (IS_FLG(FLG_RARE) && !object_is_rare(o_ptr))
return FALSE;
- /*** Common equpiments ***/
+ /*** Common equipments ***/
if (IS_FLG(FLG_COMMON) && object_is_rare(o_ptr))
return FALSE;
/* Known to be worthless? */
if (leave_worth)
if (object_value(o_ptr) > 0) return FALSE;
-
+
if (leave_equip)
- if (!object_is_weapon_armour_ammo(o_ptr)) return FALSE;
-
+ if (object_is_weapon_armour_ammo(o_ptr)) return FALSE;
+
if (leave_chest)
if ((o_ptr->tval == TV_CHEST) && o_ptr->pval) return FALSE;
-
+
if (leave_wanted)
{
if (object_is_shoukinkubi(o_ptr)) return FALSE;
}
-
+
if (leave_corpse)
if (o_ptr->tval == TV_CORPSE) return FALSE;
-
+
if (leave_junk)
if ((o_ptr->tval == TV_SKELETON) || (o_ptr->tval == TV_BOTTLE) || (o_ptr->tval == TV_JUNK) || (o_ptr->tval == TV_STATUE)) return FALSE;
else if (p_ptr->pclass == CLASS_NINJA)
{
if (o_ptr->tval == TV_LITE &&
- o_ptr->name2 == EGO_LITE_DARKNESS)
+ o_ptr->name2 == EGO_LITE_DARKNESS && object_is_known(o_ptr))
return FALSE;
}
else if (p_ptr->pclass == CLASS_BEASTMASTER ||
p_ptr->pclass == CLASS_CAVALRY)
{
if (o_ptr->tval == TV_WAND &&
- o_ptr->sval == SV_WAND_HEAL_MONSTER)
+ o_ptr->sval == SV_WAND_HEAL_MONSTER && object_is_aware(o_ptr))
return FALSE;
}
}
-
+
if (o_ptr->tval == TV_GOLD) return FALSE;
-
+
return TRUE;
}
body_str = "ÁõÈ÷";
}
- /*** Rare equpiments ***/
+ /*** Rare equipments ***/
if (IS_FLG(FLG_RARE))
{
before_str[before_n++] = "¥É¥é¥´¥óÁõÈ÷¤ä¥«¥ª¥¹¡¦¥Ö¥ì¡¼¥ÉÅù¤ò´Þ¤àÄÁ¤·¤¤";
body_str = "ÁõÈ÷";
}
- /*** Common equpiments ***/
+ /*** Common equipments ***/
if (IS_FLG(FLG_COMMON))
{
before_str[before_n++] = "¤¢¤ê¤Õ¤ì¤¿(¥É¥é¥´¥óÁõÈ÷¤ä¥«¥ª¥¹¡¦¥Ö¥ì¡¼¥ÉÅù¤ÎÄÁ¤·¤¤Êª¤Ç¤Ï¤Ê¤¤)";
if (IS_FLG(FLG_STAR_IDENTIFIED))
before_str[before_n++] = "fully identified";
- /*** Rare equpiments ***/
+ /*** Rare equipments ***/
if (IS_FLG(FLG_RARE))
{
before_str[before_n++] = "very rare";
after_str[after_n++] = "such like Dragon armors, Blades of Chaos, etc.";
}
- /*** Common equpiments ***/
+ /*** Common equipments ***/
if (IS_FLG(FLG_COMMON))
{
before_str[before_n++] = "relatively common";
char f;
cptr v;
cptr s = tb->lines_list[y];
+ char *ss, *s_keep;
+ int s_len;
/* Update this line's state */
tb->states[y] = state;
if (streq(s, "$AUTOREGISTER"))
state |= LSTAT_AUTOREGISTER;
+ s_len = strlen(s);
+ ss = (char *)string_make(s);
+ s_keep = ss;
+
/* Parse the expr */
- v = process_pref_file_expr(&s, &f);
+ v = process_pref_file_expr(&ss, &f);
+
+ /* Cannot use string_free() because the string was "destroyed" */
+ C_FREE(s_keep, s_len + 1, char);
/* Set flag */
if (streq(v, "0")) state |= LSTAT_BYPASS;
/* Look up the keymap */
act = keymap_act[mode][(byte)(buf[0])];
- /* Analyze the current action */
- ascii_to_text(tmp, act);
+ if (act)
+ {
+ /* Analyze the current action */
+ ascii_to_text(tmp, act);
+ }
+ else
+ {
+ /* No keymap defined -- Use trigger key itself as a default */
+
+ /* Nothing to do (use tmp) */
+ }
/* Insert blank action preference line */
insert_return_code(tb);
if (0 < tb->cx)
{
int len;
+#ifdef JP
int i;
+#endif
tb->cx--;
len = strlen(tb->lines_list[tb->cy]);
tb->dirty_line = -1;
tb->filename_mode = PT_DEFAULT;
+ if (turn < old_autosave_turn)
+ {
+ while (old_autosave_turn > turn) old_autosave_turn -= TURNS_PER_TICK * TOWN_DAWN;
+ }
+
/* Autosave */
if (turn > old_autosave_turn + 100L)
{