mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-18 08:28:32 +01:00
* Added CONDITION_CLASS / CONDITION_RACE / CONDITION_ACHIEVEMENT for
* gossip / loot conditions --HG-- branch : trunk
This commit is contained in:
@@ -7725,8 +7725,17 @@ bool PlayerCondition::Meets(Player const * player) const
|
||||
FactionEntry const* faction = sFactionStore.LookupEntry(value1);
|
||||
return faction && uint32(player->GetReputationMgr().GetRank(faction)) >= int32(value2);
|
||||
}
|
||||
case CONDITION_ACHIEVEMENT:
|
||||
{
|
||||
AchievementEntry const* achievement = GetAchievementStore()->LookupEntry(value1);
|
||||
return (achievement,1);
|
||||
}
|
||||
case CONDITION_TEAM:
|
||||
return player->GetTeam() == value1;
|
||||
case CONDITION_CLASS:
|
||||
return player->getClass() == value1;
|
||||
case CONDITION_RACE:
|
||||
return player->getRace() == value1;
|
||||
case CONDITION_SKILL:
|
||||
return player->HasSkill(value1) && player->GetBaseSkillValue(value1) >= value2;
|
||||
case CONDITION_QUESTREWARDED:
|
||||
|
||||
@@ -313,9 +313,12 @@ enum ConditionType
|
||||
CONDITION_ACTIVE_EVENT = 12, // event_id
|
||||
CONDITION_INSTANCE_DATA = 13, // entry data
|
||||
CONDITION_QUEST_NONE = 14, // quest_id 0
|
||||
CONDITION_CLASS = 15, // class 0
|
||||
CONDITION_RACE = 16, // race 0
|
||||
CONDITION_ACHIEVEMENT = 17 // achievement_id 0
|
||||
};
|
||||
|
||||
#define MAX_CONDITION 15 // maximum value in ConditionType enum
|
||||
#define MAX_CONDITION 18 // maximum value in ConditionType enum
|
||||
|
||||
struct PlayerCondition
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user