OSDN Git Service

#37287 #37353 (2.2.0.89) EGO_IDX, ACTIVATE_IDX型を定義し、型の置換を継続中。 / Define EGO_IDX, ACTIV...
[hengband/hengband.git] / src / load.c
index f21f6f2..7384020 100644 (file)
@@ -370,7 +370,9 @@ static void rd_item_old(object_type *o_ptr)
        rd_byte(&o_ptr->discount);
        rd_byte(&tmp8u);
        o_ptr->number = (ITEM_NUMBER)tmp8u;
-       rd_s16b(&o_ptr->weight);
+
+       rd_s16b(&tmp16s);
+       o_ptr->weight = tmp16s;
 
        rd_byte(&tmp8u);
        o_ptr->name1 = tmp8u;
@@ -647,7 +649,8 @@ static void rd_item(object_type *o_ptr)
        }       
        else o_ptr->number = 1;
 
-       rd_s16b(&o_ptr->weight);
+       rd_s16b(&tmp16s);
+       o_ptr->weight = tmp16s;
 
        if (flags & SAVE_ITEM_NAME1)
        {
@@ -1156,22 +1159,28 @@ static void rd_monster(monster_type *m_ptr)
 static void rd_lore(MONRACE_IDX r_idx)
 {
        byte tmp8u;
+       s16b tmp16s;
 
        monster_race *r_ptr = &r_info[r_idx];
 
        /* Count sights/deaths/kills */
-       rd_s16b(&r_ptr->r_sights);
-       rd_s16b(&r_ptr->r_deaths);
-       rd_s16b(&r_ptr->r_pkills);
+       rd_s16b(&tmp16s);
+       r_ptr->r_sights = (MONSTER_NUMBER)tmp16s;
+       rd_s16b(&tmp16s);
+       r_ptr->r_deaths = (MONSTER_NUMBER)tmp16s;
+       rd_s16b(&tmp16s);
+       r_ptr->r_pkills = (MONSTER_NUMBER)tmp16s;
        if (h_older_than(1, 7, 0, 5))
        {
                r_ptr->r_akills = r_ptr->r_pkills;
        }
        else
        {
-               rd_s16b(&r_ptr->r_akills);
+               rd_s16b(&tmp16s);
+               r_ptr->r_akills = (MONSTER_NUMBER)tmp16s; 
        }
-       rd_s16b(&r_ptr->r_tkills);
+       rd_s16b(&tmp16s);
+       r_ptr->r_tkills = (MONSTER_NUMBER)tmp16s;
 
        /* Count wakes and ignores */
        rd_byte(&r_ptr->r_wake);
@@ -1182,8 +1191,10 @@ static void rd_lore(MONRACE_IDX r_idx)
        rd_byte(&r_ptr->r_xtra2);
 
        /* Count drops */
-       rd_byte(&r_ptr->r_drop_gold);
-       rd_byte(&r_ptr->r_drop_item);
+       rd_byte(&tmp8u);
+       r_ptr->r_drop_gold = (ITEM_NUMBER)tmp8u;
+       rd_byte(&tmp8u);
+       r_ptr->r_drop_item = (ITEM_NUMBER)tmp8u;
 
        /* Count spells */
        rd_byte(&tmp8u);
@@ -1244,7 +1255,8 @@ static void rd_lore(MONRACE_IDX r_idx)
        }
 
        /* Read the "Racial" monster limit per level */
-       rd_byte(&r_ptr->max_num);
+       rd_byte(&tmp8u);
+       r_ptr->max_num = (MONSTER_NUMBER)tmp8u;
 
        /* Location in saved floor */
        rd_s16b(&r_ptr->floor_id);
@@ -2196,7 +2208,8 @@ static void rd_extra(void)
        p_ptr->autopick_autoregister = tmp8u ? TRUE : FALSE;
 
        rd_byte(&tmp8u); /* oops */
-       rd_byte(&p_ptr->action);
+       rd_byte(&tmp8u);
+       p_ptr->action = (ACTION_IDX)tmp8u;
        if (!z_older_than(10, 4, 3))
        {
                rd_byte(&tmp8u);