[strike]Actually I was double-checking that... at this point, when you're being quizzed, none of your stats, mana, hp, etc. has been set to anything. The default amount of mana is 100, like you said. What's happening is that, whether you pick hp, mana, or move, it's being kicked up to 200. I changed class.c a little to make GET_MAX_HP(ch) (etc.) to, in the instance of max mana, GET_MAX_MANA(ch) += 100;[/strike]
This might start getting a little tricky. For instance, I was planning on making the quiz being able to mod your stats. Where it is at now, with no stats, makes it more difficult. Might be good to perform the roll_real_abils function at the beginning of the quiz. For instance... putting it here:
Code:
case CON_QQUIZ: // Please note that there is already a break for this case: you don't need to add one.
roll_real_abils(d->character); // Roll stats here instead
load_result = parse_quiz(*arg);
if (load_result == QUIZ_UNDEFINED) {
write_to_output(d, "\r\nSorry, that's not a valid choice.");
return;
I did a little bit of testing. I kept the quiz from being able to make any changes to mana and such. what I did do was the following in class.c...
Code:
void do_start(struct char_data *ch)
{
GET_LEVEL(ch) = 1;
GET_EXP(ch) = 1;
set_title(ch, NULL);
roll_real_abils(ch);
GET_MAX_HIT(ch) += 20;
if (IS_DWARF(ch)) // Dwarves are stockier than other races.
GET_MAX_HIT(ch) += 40;
GET_MAX_MANA(ch) += 100;
GET_MAX_MOVE(ch) += 82;
if (IS_DWARF(ch)) // While it takes them longer to travel, they have higher stamina.
GET_MAX_MOVE(ch) += 100;
Strangely enough, everything works just fine (I've had it this way when I started working on the quiz). After removing the quiz's effects though... starting a new character still generates someone with 200 mana. Likely, perhaps, it's set when the save_char function is called after verifying a password. Maybe it has something to do with PFDEF_MAXMANA?
Anyways, thanks for the help and for listening.