Core/Achievements: Implemented CRITERIA_TYPE_UPGRADE_GARRISON_BUILDING

Port From (https://github.com/TrinityCore/TrinityCore/commit/d1ef8f28b01507286a6f876913c3242d0743ebef)
This commit is contained in:
hondacrx
2021-06-05 19:55:05 -04:00
parent cd07815901
commit 4f3d0c0ac6
3 changed files with 11 additions and 4 deletions
+7 -2
View File
@@ -36,7 +36,10 @@ namespace Framework.Constants
public enum GarrisonFollowerType public enum GarrisonFollowerType
{ {
Garrison = 1, Garrison = 1,
Shipyard = 2 Shipyard = 2,
ClassOrder = 4,
WarCampaign = 11,
Covenant = 123
} }
public enum GarrisonAbilityFlags : ushort public enum GarrisonAbilityFlags : ushort
@@ -159,6 +162,8 @@ namespace Framework.Constants
public enum GarrisonType public enum GarrisonType
{ {
Garrison = 2, Garrison = 2,
ClassOrder = 3 ClassOrder = 3,
WarCampaign = 9,
Covenant = 111
} }
} }
+2 -2
View File
@@ -138,6 +138,7 @@ namespace Game.Achievements
case CriteriaTypes.WinArena: // This also behaves like ACHIEVEMENT_CRITERIA_TYPE_WIN_RATED_ARENA case CriteriaTypes.WinArena: // This also behaves like ACHIEVEMENT_CRITERIA_TYPE_WIN_RATED_ARENA
case CriteriaTypes.OnLogin: case CriteriaTypes.OnLogin:
case CriteriaTypes.PlaceGarrisonBuilding: case CriteriaTypes.PlaceGarrisonBuilding:
case CriteriaTypes.UpgradeGarrisonBuilding:
case CriteriaTypes.OwnBattlePetCount: case CriteriaTypes.OwnBattlePetCount:
case CriteriaTypes.HonorLevelReached: case CriteriaTypes.HonorLevelReached:
case CriteriaTypes.PrestigeReached: case CriteriaTypes.PrestigeReached:
@@ -399,7 +400,6 @@ namespace Game.Achievements
case CriteriaTypes.EnterArea: case CriteriaTypes.EnterArea:
case CriteriaTypes.LeaveArea: case CriteriaTypes.LeaveArea:
case CriteriaTypes.CompleteDungeonEncounter: case CriteriaTypes.CompleteDungeonEncounter:
case CriteriaTypes.UpgradeGarrisonBuilding:
case CriteriaTypes.ConstructGarrisonBuilding: case CriteriaTypes.ConstructGarrisonBuilding:
case CriteriaTypes.UpgradeGarrison: case CriteriaTypes.UpgradeGarrison:
case CriteriaTypes.StartGarrisonMission: case CriteriaTypes.StartGarrisonMission:
@@ -1761,7 +1761,7 @@ namespace Game.Achievements
return false; return false;
break; break;
case CriteriaAdditionalCondition.Mentor: // 123 case CriteriaAdditionalCondition.Mentor: // 123
if (!referencePlayer.HasPlayerFlag(PlayerFlags.Mentor)) if (!referencePlayer.HasPlayerFlag(PlayerFlags.Timewalking))
return false; return false;
break; break;
case CriteriaAdditionalCondition.GarrisonLevelAbove: // 126 case CriteriaAdditionalCondition.GarrisonLevelAbove: // 126
+2
View File
@@ -476,6 +476,8 @@ namespace Game.Garrisons
GarrisonBuildingActivated buildingActivated = new(); GarrisonBuildingActivated buildingActivated = new();
buildingActivated.GarrPlotInstanceID = garrPlotInstanceId; buildingActivated.GarrPlotInstanceID = garrPlotInstanceId;
_owner.SendPacket(buildingActivated); _owner.SendPacket(buildingActivated);
_owner.UpdateCriteria(CriteriaTypes.UpgradeGarrisonBuilding, plot.BuildingInfo.PacketInfo.Value.GarrBuildingID);
} }
} }
} }