o_ptr->ix = (POSITION)tmp8u;
/* Type/Subtype */
- rd_byte(&o_ptr->tval);
- rd_byte(&o_ptr->sval);
+ rd_byte(&tmp8u);
+ o_ptr->tval = tmp8u;
+ rd_byte(&tmp8u);
+ o_ptr->sval = tmp8u;
if (z_older_than(10, 4, 4))
{
rd_s16b(&o_ptr->pval);
rd_byte(&o_ptr->discount);
- rd_byte(&o_ptr->number);
+ rd_byte(&tmp8u);
+ o_ptr->number = (ITEM_NUMBER)tmp8u;
rd_s16b(&o_ptr->weight);
- rd_byte(&o_ptr->name1);
- rd_byte(&o_ptr->name2);
+ rd_byte(&tmp8u);
+ o_ptr->name1 = tmp8u;
+
+ rd_byte(&tmp8u);
+ o_ptr->name2 = tmp8u;
+
rd_s16b(&o_ptr->timeout);
rd_s16b(&o_ptr->to_h);
rd_s16b(&o_ptr->ac);
- rd_byte(&o_ptr->dd);
- rd_byte(&o_ptr->ds);
+ rd_byte(&tmp8u);
+ o_ptr->dd = tmp8u;
+ rd_byte(&tmp8u);
+ o_ptr->ds = tmp8u;
rd_byte(&o_ptr->ident);
if (flags & SAVE_ITEM_DISCOUNT) rd_byte(&o_ptr->discount);
else o_ptr->discount = 0;
- if (flags & SAVE_ITEM_NUMBER) rd_byte(&o_ptr->number);
+ if (flags & SAVE_ITEM_NUMBER) {
+ rd_byte(&tmp8u);
+ o_ptr->number = tmp8u;
+ }
else o_ptr->number = 1;
rd_s16b(&o_ptr->weight);
- if (flags & SAVE_ITEM_NAME1) rd_byte(&o_ptr->name1);
+ if (flags & SAVE_ITEM_NAME1)
+ {
+ rd_byte(&tmp8u);
+ o_ptr->name1 = tmp8u;
+ }
else o_ptr->name1 = 0;
- if (flags & SAVE_ITEM_NAME2) rd_byte(&o_ptr->name2);
+ if (flags & SAVE_ITEM_NAME2)
+ {
+ rd_byte(&tmp8u);
+ o_ptr->name2 = tmp8u;
+ }
else o_ptr->name2 = 0;
if (flags & SAVE_ITEM_TIMEOUT) rd_s16b(&o_ptr->timeout);
else o_ptr->timeout = 0;
if (flags & SAVE_ITEM_AC) rd_s16b(&o_ptr->ac);
else o_ptr->ac = 0;
- if (flags & SAVE_ITEM_DD) rd_byte(&o_ptr->dd);
+ if (flags & SAVE_ITEM_DD)
+ {
+ rd_byte(&tmp8u);
+ o_ptr->dd = tmp8u;
+ }
else o_ptr->dd = 0;
- if (flags & SAVE_ITEM_DS) rd_byte(&o_ptr->ds);
+ if (flags & SAVE_ITEM_DS)
+ {
+ rd_byte(&tmp8u);
+ o_ptr->ds = tmp8u;
+ }
else o_ptr->ds = 0;
if (flags & SAVE_ITEM_IDENT) rd_byte(&o_ptr->ident);
{
byte tmp8u;
s16b tmp16s;
+ u32b tmp32u;
char buf[128];
/* Read the monster race */
if (z_older_than(10, 4, 5))
m_ptr->exp = 0;
else
- rd_u32b(&m_ptr->exp);
+ rd_u32b(&tmp32u);
+ m_ptr->exp = tmp32u;
if (z_older_than(10, 2, 2))
{
char buf[128];
byte tmp8u;
s16b tmp16s;
+ u32b tmp32u;
if (h_older_than(1, 5, 0, 0))
{
if (flags & SAVE_MON_SMART) rd_u32b(&m_ptr->smart);
else m_ptr->smart = 0;
- if (flags & SAVE_MON_EXP) rd_u32b(&m_ptr->exp);
+ if (flags & SAVE_MON_EXP)
+ {
+ rd_u32b(&tmp32u);
+ m_ptr->exp = (EXP)tmp32u;
+ }
else m_ptr->exp = 0;
m_ptr->mflag = 0; /* Not saved */
* @param r_idx 読み込み先モンスターID
* @return なし
*/
-static void rd_lore(int r_idx)
+static void rd_lore(MONRACE_IDX r_idx)
{
byte tmp8u;
static void load_quick_start(void)
{
byte tmp8u;
+ s16b tmp16s;
int i;
if (z_older_than(11, 0, 13))
rd_byte(&previous_char.prace);
rd_byte(&previous_char.pclass);
rd_byte(&previous_char.pseikaku);
- rd_byte(&previous_char.realm1);
- rd_byte(&previous_char.realm2);
+ rd_byte(&tmp8u);
+ previous_char.realm1 = (REALM_IDX)tmp8u;
+ rd_byte(&tmp8u);
+ previous_char.realm2 = (REALM_IDX)tmp8u;
rd_s16b(&previous_char.age);
rd_s16b(&previous_char.ht);
for (i = 0; i < 6; i++) rd_s16b(&previous_char.stat_max[i]);
for (i = 0; i < 6; i++) rd_s16b(&previous_char.stat_max_max[i]);
- for (i = 0; i < PY_MAX_LEVEL; i++) rd_s16b(&previous_char.player_hp[i]);
+ for (i = 0; i < PY_MAX_LEVEL; i++)
+ {
+ rd_s16b(&tmp16s);
+ previous_char.player_hp[i] = (HIT_POINT)tmp16s;
+ }
rd_s16b(&previous_char.chaos_patron);
byte tmp8u;
s16b tmp16s;
+ s32b tmp32s;
u16b tmp16u;
rd_string(p_ptr->name, sizeof(p_ptr->name));
rd_byte(&p_ptr->pclass);
rd_byte(&p_ptr->pseikaku);
rd_byte(&p_ptr->psex);
- rd_byte(&p_ptr->realm1);
- rd_byte(&p_ptr->realm2);
+ rd_byte(&tmp8u);
+ p_ptr->realm1 = (REALM_IDX)tmp8u;
+ rd_byte(&tmp8u);
+ p_ptr->realm2 = (REALM_IDX)tmp8u;
rd_byte(&tmp8u); /* oops */
if (z_older_than(10, 4, 4))
else
{
rd_byte(&p_ptr->start_race);
- rd_s32b(&p_ptr->old_race1);
- rd_s32b(&p_ptr->old_race2);
+ rd_s32b(&tmp32s);
+ p_ptr->old_race1 = (BIT_FLAGS)tmp32s;
+ rd_s32b(&tmp32s);
+ p_ptr->old_race2 = (BIT_FLAGS)tmp32s;
rd_s16b(&p_ptr->old_realm);
}
{
for (i = 0; i < MAX_MANE; i++)
{
- rd_s16b(&p_ptr->mane_spell[i]);
- rd_s16b(&p_ptr->mane_dam[i]);
+ rd_s16b(&tmp16s);
+ p_ptr->mane_spell[i] = (SPELL_IDX)tmp16s;
+ rd_s16b(&tmp16s);
+ p_ptr->mane_dam[i] = (SPELL_IDX)tmp16s;
}
rd_s16b(&p_ptr->mane_num);
}
rd_s16b(&p_ptr->max_plv);
if (z_older_than(10, 3, 8))
{
- rd_s16b(&max_dlv[DUNGEON_ANGBAND]);
+ rd_s16b(&tmp16s);
+ max_dlv[DUNGEON_ANGBAND] = tmp16s;
}
else
{
for(i = 0; i < max; i++)
{
- rd_s16b(&max_dlv[i]);
+ rd_s16b(&tmp16s);
+ max_dlv[i] = tmp16s;
if (max_dlv[i] > d_info[i].maxdepth) max_dlv[i] = d_info[i].maxdepth;
}
}
else
{
rd_s16b(&p_ptr->tim_res_time);
- rd_byte(&p_ptr->mimic_form);
+ rd_byte(&tmp8u);
+ p_ptr->mimic_form = (IDX)tmp8u;
rd_s16b(&p_ptr->tim_mimic);
rd_s16b(&p_ptr->tim_sh_fire);
}
}
else if (z_older_than(10, 3, 10))
{
- s32b tmp32s;
rd_s32b(&tmp32s);
p_ptr->visit = 1L;
}
else
{
- rd_s32b(&p_ptr->visit);
+ rd_s32b(&tmp32s);
+ p_ptr->visit = (BIT_FLAGS)tmp32s;
}
if (!z_older_than(11, 0, 5))
{
rd_s16b(&tmp16s);
dun_level = (DEPTH)tmp16s;
if (z_older_than(10, 3, 8)) dungeon_type = DUNGEON_ANGBAND;
- else rd_byte(&dungeon_type);
+ else
+ {
+ rd_byte(&tmp8u);
+ dungeon_type = (IDX)tmp8u;
+ }
/* Set the base level for old versions */
base_level = dun_level;
rd_s16b(&num_repro);
rd_s16b(&tmp16s);
- p_ptr->y = (int)tmp16s;
+ p_ptr->y = (POSITION)tmp16s;
rd_s16b(&tmp16s);
- p_ptr->x = (int)tmp16s;
+ p_ptr->x = (POSITION)tmp16s;
if (z_older_than(10, 3, 13) && !dun_level && !p_ptr->inside_arena) {p_ptr->y = 33;p_ptr->x = 131;}
rd_s16b(&tmp16s);
cur_hgt = (POSITION)tmp16s;
/* Read the monsters */
for (i = 1; i < limit; i++)
{
- IDX m_idx;
+ MONSTER_IDX m_idx;
monster_type *m_ptr;
/* Get a new record */
/* Read the dungeon items */
for (i = 1; i < limit; i++)
{
- int o_idx;
+ IDX o_idx;
object_type *o_ptr;
for (i = 1; i < limit; i++)
{
cave_type *c_ptr;
- int m_idx;
+ MONSTER_IDX m_idx;
monster_type *m_ptr;
/* Get a new record */
static errr rd_dungeon(void)
{
errr err = 0;
+ s16b tmp16s;
+ byte_hack tmp8u;
byte num;
int i;
rd_s16b(&max_floor_id);
/* Current dungeon type */
- rd_byte(&dungeon_type);
-
+ rd_byte(&tmp8u);
+ dungeon_type = (DUNGEON_IDX)tmp8u;
/* Number of the saved_floors array elements */
rd_byte(&num);
rd_s16b(&sf_ptr->floor_id);
rd_byte(&sf_ptr->savefile_id);
- rd_s16b(&sf_ptr->dun_level);
+
+ rd_s16b(&tmp16s);
+ sf_ptr->dun_level = (DEPTH)tmp16s;
+
rd_s32b(&sf_ptr->last_visit);
rd_u32b(&sf_ptr->visit_mark);
rd_s16b(&sf_ptr->upper_floor_id);
for (i = 0; i < num; i++)
{
saved_floor_type *sf_ptr = &saved_floors[i];
- byte tmp8u;
/* Unused element */
if (!sf_ptr->floor_id) continue;
byte tmp8u;
u16b tmp16u;
+ s16b tmp16s;
u32b tmp32u;
#ifdef VERIFY_CHECKSUMS
for (i = 0; i < tmp16u; i++)
{
/* Read the lore */
- rd_lore(i);
+ rd_lore((MONRACE_IDX)i);
}
if (arg_fiddle) note(_("モンスターの思い出をロードしました", "Loaded Monster Memory"));
quest_type* const q_ptr = &quest[i];
rd_s16b(&q_ptr->status);
- rd_s16b(&q_ptr->level);
+ rd_s16b(&tmp16s);
+ q_ptr->level = tmp16s;
if (z_older_than(11, 0, 6))
{
}
else
{
- rd_byte(&q_ptr->complev);
+ rd_byte(&tmp8u);
+ q_ptr->complev = tmp8u;
}
if(h_older_than(2, 1, 2, 2))
{
(!z_older_than(10, 3, 14) && (q_ptr->status == QUEST_STATUS_COMPLETED)) ||
(!z_older_than(11, 0, 7) && (i >= MIN_RANDOM_QUEST) && (i <= (MIN_RANDOM_QUEST + max_rquests_load))))
{
- rd_s16b(&q_ptr->cur_num);
- rd_s16b(&q_ptr->max_num);
+ rd_s16b(&tmp16s);
+ q_ptr->cur_num = (MONSTER_NUMBER)tmp16s;
+ rd_s16b(&tmp16s);
+ q_ptr->max_num = (MONSTER_NUMBER)tmp16s;
rd_s16b(&q_ptr->type);
/* Load quest monster index */
if (q_ptr->k_idx)
a_info[q_ptr->k_idx].gen_flags |= TRG_QUESTITEM;
- rd_byte(&q_ptr->flags);
+ rd_byte(&tmp8u);
+ q_ptr->flags = tmp8u;
if (z_older_than(10, 3, 11))
{
else
{
init_flags = INIT_ASSIGN;
- p_ptr->inside_quest = i;
+ p_ptr->inside_quest = (QUEST_IDX)i;
process_dungeon_file("q_info.txt", 0, 0, 0, 0);
p_ptr->inside_quest = old_inside_quest;
}
else
{
- rd_byte(&q_ptr->dungeon);
+ rd_byte(&tmp8u);
+ q_ptr->dungeon = tmp8u;
}
/* Mark uniques */
if (q_ptr->status == QUEST_STATUS_TAKEN || q_ptr->status == QUEST_STATUS_UNTAKEN)
/* Read the player_hp array */
for (i = 0; i < tmp16u; i++)
{
- rd_s16b(&p_ptr->player_hp[i]);
+ rd_s16b(&tmp16s);
+ p_ptr->player_hp[i] = (HIT_POINT)tmp16s;
}
/* Important -- Initialize the sex */
for (i = 0; i < 64; i++)
{
- rd_byte(&p_ptr->spell_order[i]);
+ rd_byte(&tmp8u);
+ p_ptr->spell_order[i] = (SPELL_IDX)tmp8u;
}