Fixed 2 qedit bugs. (thanks Jamdog) -- Rumble

This commit is contained in:
Rumble 2008-05-18 00:44:52 +00:00
parent 9fe2558b93
commit 37c7e2fb0c
2 changed files with 10 additions and 4 deletions

View file

@ -107,10 +107,11 @@ int add_quest(struct aq_data *nqst)
copy_quest(&aquest_table[rnum], nqst, FALSE);
}
/* Make sure we assign spec procs to the questmaster */
if (mob_index[QST_MASTER(rnum)].func &&
if (QST_MASTER(rnum) != NOBODY && mob_index[QST_MASTER(rnum)].func &&
mob_index[QST_MASTER(rnum)].func != questmaster)
QST_FUNC(rnum) = mob_index[QST_MASTER(rnum)].func;
mob_index[QST_MASTER(rnum)].func = questmaster;
if(QST_MASTER(rnum) != NOBODY)
mob_index[QST_MASTER(rnum)].func = questmaster;
/* And make sure we save the updated quest information to disk */
if (rznum != NOWHERE)
@ -145,7 +146,10 @@ int delete_quest(qst_rnum rnum)
aquest_table[i] = aquest_table[i + 1];
}
total_quests--;
RECREATE(aquest_table, struct aq_data, total_quests);
if (total_quests > 0)
RECREATE(aquest_table, struct aq_data, total_quests);
else
free(aquest_table);
if (rznum != NOWHERE)
add_to_save_list(zone_table[rznum].number, SL_QST);