From cb35df2c8b78db0abc5cb45bcad151ed8cffc0eb Mon Sep 17 00:00:00 2001 From: Gepard Date: Wed, 20 Apr 2011 03:06:40 +0000 Subject: * Fixed quest_check checking exactly 3 quest objectives instead of MAX_QUEST_OBJECTIVES (since r13959). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14800 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/quest.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) (limited to 'src') diff --git a/src/map/quest.c b/src/map/quest.c index 3e43fcda6..4960d8a93 100644 --- a/src/map/quest.c +++ b/src/map/quest.c @@ -279,17 +279,13 @@ int quest_check(TBL_PC * sd, int quest_id, quest_check_type type) return (sd->quest_log[i].time < (unsigned int)time(NULL) ? 2 : sd->quest_log[i].state == Q_COMPLETE ? 1 : 0); case HUNTING: { - int j = sd->quest_index[i]; - - if( sd->quest_log[i].count[0] < quest_db[j].count[0] || sd->quest_log[i].count[1] < quest_db[j].count[1] || sd->quest_log[i].count[2] < quest_db[j].count[2] ) - { - if( sd->quest_log[i].time < (unsigned int)time(NULL) ) - return 1; - - return 0; - } - - return 2; + int j; + ARR_FIND(0, MAX_QUEST_OBJECTIVES, j, sd->quest_log[i].count[j] < quest_db[sd->quest_index[i]].count[j]); + if( j == MAX_QUEST_OBJECTIVES ) + return 2; + if( sd->quest_log[i].time < (unsigned int)time(NULL) ) + return 1; + return 0; } default: ShowError("quest_check_quest: Unknown parameter %d",type); @@ -334,7 +330,7 @@ int quest_read_db(void) continue; else { - ShowError("quest_read_db: insufficient columes in line %s\n", line); + ShowError("quest_read_db: insufficient columns in line %s\n", line); continue; } } -- cgit v1.2.3-70-g09d2