diff --git a/src/Services/AchievementService.cs b/src/Services/AchievementService.cs index d4f4449..e7079f3 100644 --- a/src/Services/AchievementService.cs +++ b/src/Services/AchievementService.cs @@ -54,6 +54,11 @@ namespace sodoff.Services { public AchievementReward? AddDragonAchievementPoints(Dragon dragon, int? value) { dragon.PetXP = (dragon.PetXP ?? 0) + (value ?? 0); + if (dragon.PetXP < 0) { + dragon.PetXP = int.MaxValue; + value = 0; + } + return new AchievementReward{ // NOTE: RewardID and EntityTypeID are not used by client EntityID = Guid.Parse(dragon.EntityId), @@ -76,6 +81,11 @@ namespace sodoff.Services { } xpPoints.Value += value ?? 0; + if (xpPoints.Value < 0) { + xpPoints.Value = int.MaxValue; + value = 0; + } + return new AchievementReward{ EntityID = Guid.Parse(viking.Id), PointTypeID = type,