* Returns FALSE when there isn't enough space available to store
* the text.
*/
-static bool add_tag(s16b *offset, header *head, cptr buf)
+static bool add_tag(STR_OFFSET *offset, header *head, cptr buf)
{
u32b i;
&typ, &rat, &hgt, &wid)) return (1);
/* Save the values */
- v_ptr->typ = typ;
- v_ptr->rat = rat;
+ v_ptr->typ = (ROOM_IDX)typ;
+ v_ptr->rat = (PROB)rat;
v_ptr->hgt = (POSITION)hgt;
v_ptr->wid = (POSITION)wid;
}
/* Process 'M' for "Mimic" (one line only) */
else if (buf[0] == 'M')
{
- s16b offset;
+ STR_OFFSET offset;
if (!add_tag(&offset, head, buf + 2)) return PARSE_ERROR_OUT_OF_MEMORY;
/* Process 'K' for "States" (up to four lines + default (which cannot be last)) */
else if (buf[0] == 'K')
{
- s16b offset;
+ STR_OFFSET offset;
/* Find the next empty state slot (if any) */
for (i = 0; i < MAX_FEAT_STATES; i++) if (f_ptr->state[i].action == FF_FLAG_MAX) break;
/* Save the values */
k_ptr->level = (DEPTH)level;
- k_ptr->extra = extra;
+ k_ptr->extra = (BIT_FLAGS8)extra;
k_ptr->weight = (WEIGHT)wgt;
k_ptr->cost = (PRICE)cost;
}
if (t && (!s || t < s))
{
int chance = atoi(t+1);
- if (chance > 0) k_ptr->chance[i] = chance;
+ if (chance > 0) k_ptr->chance[i] = (PROB)chance;
}
}
}
&slot, &rating)) return (1);
/* Save the values */
- e_ptr->slot = slot;
- e_ptr->rating = rating;
+ e_ptr->slot = (INVENTORY_IDX)slot;
+ e_ptr->rating = (PRICE)rating;
}
/* Process 'W' for "More Info" (one line only) */
r_ptr->speed = (SPEED)spd;
r_ptr->hdice = (DICE_NUMBER)MAX(hp1, 1);
r_ptr->hside = (DICE_SID)MAX(hp2, 1);
- r_ptr->aaf = aaf;
+ r_ptr->aaf = (POSITION)aaf;
r_ptr->ac = (ARMOUR_CLASS)ac;
- r_ptr->sleep = slp;
+ r_ptr->sleep = (SLEEP_DEGREE)slp;
}
/* Process 'W' for "More Info" (one line only) */
/* Save the values */
r_ptr->level = (DEPTH)lev;
r_ptr->rarity = (RARITY)rar;
- r_ptr->extra = pad;
- r_ptr->mexp = exp;
- r_ptr->next_exp = nextexp;
+ r_ptr->extra = (BIT_FLAGS16)pad;
+ r_ptr->mexp = (EXP)exp;
+ r_ptr->next_exp = (EXP)nextexp;
r_ptr->next_r_idx = (IDX)nextmon;
}
if (*t == 'd') *t++ = '\0';
/* Save the method */
- r_ptr->blow[i].method = n1;
+ r_ptr->blow[i].method = (BLOW_METHOD)n1;
/* Save the effect */
- r_ptr->blow[i].effect = n2;
+ r_ptr->blow[i].effect = (BLOW_EFFECT)n2;
/* Extract the damage dice and sides */
r_ptr->blow[i].d_dice = atoi(s);
if (1 == sscanf(s, "FINAL_ARTIFACT_%d", &artif))
{
/* Extract a "Final Artifact" */
- d_ptr->final_artifact = artif;
+ d_ptr->final_artifact = (ARTIFACT_IDX)artif;
/* Start at next entry */
s = t;
if (1 == sscanf(s, "FINAL_OBJECT_%d", &artif))
{
/* Extract a "Final Artifact" */
- d_ptr->final_object = artif;
+ d_ptr->final_object = (KIND_OBJECT_IDX)artif;
/* Start at next entry */
s = t;
if (1 == sscanf(s, "FINAL_GUARDIAN_%d", &monst))
{
/* Extract a "Artifact Guardian" */
- d_ptr->final_guardian = monst;
+ d_ptr->final_guardian = (MONRACE_IDX)monst;
/* Start at next entry */
s = t;
if (num < 9) return (PARSE_ERROR_TOO_FEW_ARGUMENTS);
- q_ptr->type = atoi(zz[2]);
- q_ptr->num_mon = atoi(zz[3]);
- q_ptr->cur_num = atoi(zz[4]);
- q_ptr->max_num = atoi(zz[5]);
- q_ptr->level = atoi(zz[6]);
+ q_ptr->type = (QUEST_TYPE)atoi(zz[2]);
+ q_ptr->num_mon = (MONSTER_NUMBER)atoi(zz[3]);
+ q_ptr->cur_num = (MONSTER_NUMBER)atoi(zz[4]);
+ q_ptr->max_num = (MONSTER_NUMBER)atoi(zz[5]);
+ q_ptr->level = (DEPTH)atoi(zz[6]);
q_ptr->r_idx = (IDX)atoi(zz[7]);
q_ptr->k_idx = (IDX)atoi(zz[8]);
- q_ptr->dungeon = atoi(zz[9]);
+ q_ptr->dungeon = (DUNGEON_IDX)atoi(zz[9]);
if (num > 10)
q_ptr->flags = atoi(zz[10]);