fprintf (fp, "Race %s~\n", pc_race_table[ch->race].name);
ch->race = race_lookup ("human");
/* initialize race */
if (found)
{
int i;
if (ch->race == 0)
ch->race = race_lookup ("human");
ch->size = pc_race_table[ch->race].size;
ch->dam_type = 17; /*punch */
for (i = 0; i < 5; i++)
{
if (pc_race_table[ch->race].skills[i] == NULL)
break;
group_add (ch, pc_race_table[ch->race].skills[i], FALSE);
}
// ch->detection = ch->detection|race_table[ch->race].det;
ch->affected_by = ch->affected_by | race_table[ch->race].aff;
ch->imm_flags = ch->imm_flags | race_table[ch->race].imm;
ch->res_flags = ch->res_flags | race_table[ch->race].res;
ch->vuln_flags = ch->vuln_flags | race_table[ch->race].vuln;
ch->form = race_table[ch->race].form;
ch->parts = race_table[ch->race].parts;
}
KEY ("Race", ch->race, race_lookup (fread_string (fp)));
/* returns race number */
int race_lookup (const char *name)
{
int race;
for (race = 0; race_table[race].name != NULL; race++)
{
if (LOWER (name[0]) == LOWER (race_table[race].name[0])
&& !str_prefix (name, race_table[race].name))
return race;
}
return 0;
}