From c2261e350231a9d2fb7699a27c8991aa76874b14 Mon Sep 17 00:00:00 2001 From: megamage Date: Fri, 6 Mar 2009 18:14:05 -0600 Subject: [7391] Prevent achievement counter overflow, implement ACHIEVEMENT_CRITERIA_TYPE_DO_EMOTE generic support. Before overflow has been possible at 4294967295 lols for example. ACHIEVEMENT_CRITERIA_TYPE_DO_EMOTE in many cases require check special conditions and targets. For this allow call it from scripts: * Add Player::UpdateAchievementCriteria functiona ccessable from scripts * In emote case it allowed call in form player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_DO_EMOTE, text_emote_id, achievement_id, target_unit_ptr); Author: VladimirMangos --HG-- branch : trunk --- src/shared/Database/DBCStructure.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/shared/Database/DBCStructure.h') diff --git a/src/shared/Database/DBCStructure.h b/src/shared/Database/DBCStructure.h index 073772c7522..60411ae1583 100644 --- a/src/shared/Database/DBCStructure.h +++ b/src/shared/Database/DBCStructure.h @@ -359,7 +359,8 @@ struct AchievementCriteriaEntry // TODO: where is the information about the target stored? struct { - uint32 emoteID; // 3 + uint32 emoteID; // 3 enum TextEmotes + uint32 count; // 4 count of emotes, always required special target or requirements } do_emote; // ACHIEVEMENT_CRITERIA_TYPE_DAMAGE_DONE = 13 // ACHIEVEMENT_CRITERIA_TYPE_HEALING_DONE = 55 -- cgit v1.2.3