diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/map/achievement.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/map/achievement.c b/src/map/achievement.c index e6a9ae3be..0b0d9749b 100644 --- a/src/map/achievement.c +++ b/src/map/achievement.c @@ -194,6 +194,8 @@ static void achievement_progress_add(struct map_session_data *sd, const struct a // Check if the Achievement is complete. if (achievement->check_complete(sd, ad)) { achievement->validate_achieve(sd, ad->id); + if ((ach = achievement->ensure(sd, ad)) == NULL) + return; ach->completed_at = time(NULL); } @@ -232,6 +234,8 @@ static void achievement_progress_set(struct map_session_data *sd, const struct a if (achievement->check_complete(sd, ad)) { achievement->validate_achieve(sd, ad->id); + if ((ach = achievement->ensure(sd, ad)) == NULL) + return; ach->completed_at = time(NULL); } |