Core/Players: Implemented PlayerDataElementAccount, PlayerDataElementCharacter, PlayerDataFlagAccount and PlayerDataFlagCharacter

Port From (https://github.com/TrinityCore/TrinityCore/commit/60400d25f5fff2dabd4aa74bbdbc0d2370360a35)
This commit is contained in:
Hondacrx
2025-08-19 16:29:13 -04:00
parent df197587a3
commit a9fc9f454f
18 changed files with 710 additions and 26 deletions
@@ -3713,6 +3713,14 @@ namespace Game.Achievements
if (referencePlayer.GetPositionZ() >= reqValue)
return false;
break;
case ModifierTreeType.PlayerDataFlagAccountIsSet: // 378
if (!referencePlayer.HasDataFlagAccount(reqValue))
return false;
break;
case ModifierTreeType.PlayerDataFlagCharacterIsSet: // 379
if (!referencePlayer.HasDataFlagCharacter(reqValue))
return false;
break;
case ModifierTreeType.PlayerIsOnMapWithExpansion: // 380
{
var mapEntry = referencePlayer.GetMap().GetEntry();
@@ -3747,6 +3755,16 @@ namespace Game.Achievements
return false;
break;
}
case ModifierTreeType.PlayerDataElementCharacterBetween: // 390
{
var value = referencePlayer.GetDataElementCharacter(reqValue);
return value >= secondaryAsset && value <= tertiaryAsset;
}
case ModifierTreeType.PlayerDataElementAccountBetween: // 391
{
var value = referencePlayer.GetDataElementAccount(reqValue);
return value >= secondaryAsset && value <= tertiaryAsset;
}
case ModifierTreeType.PlayerHasCompletedQuestOrIsReadyToTurnIn: // 392
{
QuestStatus status = referencePlayer.GetQuestStatus(reqValue);