mirror of
https://github.com/SoDOff-Project/sodoff.git
synced 2025-10-11 16:28:50 -07:00
fix Cogs/Incredible Machines achievement rewards
This commit is contained in:
parent
a5cda2b906
commit
9508af4199
@ -160,6 +160,20 @@ public class AchievementController : Controller {
|
|||||||
return Ok(new ArrayOfAchievementTaskSetResponse { AchievementTaskSetResponse = response.ToArray() });
|
return Ok(new ArrayOfAchievementTaskSetResponse { AchievementTaskSetResponse = response.ToArray() });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[HttpPost]
|
||||||
|
[Produces("application/xml")]
|
||||||
|
[Route("AchievementWebService.asmx/ApplyPayout")]
|
||||||
|
[VikingSession]
|
||||||
|
public IActionResult ApplyPayout(Viking viking, string ModuleName, int points) {
|
||||||
|
// TODO: use args (ModuleName and points) to calculate reward
|
||||||
|
return Ok(new AchievementReward[]{
|
||||||
|
achievementService.AddAchievementPointsAndGetReward(viking, AchievementPointTypes.PlayerXP, 10),
|
||||||
|
achievementService.AddAchievementPointsAndGetReward(viking, AchievementPointTypes.GameCurrency, 5),
|
||||||
|
achievementService.AddAchievementPointsAndGetReward(viking, AchievementPointTypes.DragonXP, 6),
|
||||||
|
achievementService.AddAchievementPointsAndGetReward(viking, AchievementPointTypes.UDTPoints, 6),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Produces("application/xml")]
|
[Produces("application/xml")]
|
||||||
[Route("AchievementWebService.asmx/SetAchievementByEntityIDs")]
|
[Route("AchievementWebService.asmx/SetAchievementByEntityIDs")]
|
||||||
|
@ -44,7 +44,7 @@ namespace sodoff.Services {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void SetAchievementPoints(Viking viking, AchievementPointTypes type, int value) {
|
public void SetAchievementPoints(Viking viking, AchievementPointTypes type, int value) {
|
||||||
if (type == AchievementPointTypes.DragonXP) {
|
if (type == AchievementPointTypes.DragonXP && viking.SelectedDragon != null) {
|
||||||
viking.SelectedDragon.PetXP = value;
|
viking.SelectedDragon.PetXP = value;
|
||||||
} else if (type != null) {
|
} else if (type != null) {
|
||||||
AchievementPoints xpPoints = viking.AchievementPoints.FirstOrDefault(a => a.Type == (int)type);
|
AchievementPoints xpPoints = viking.AchievementPoints.FirstOrDefault(a => a.Type == (int)type);
|
||||||
@ -59,7 +59,7 @@ namespace sodoff.Services {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void AddAchievementPoints(Viking viking, AchievementPointTypes? type, int? value) {
|
public void AddAchievementPoints(Viking viking, AchievementPointTypes? type, int? value) {
|
||||||
if (type == AchievementPointTypes.DragonXP) {
|
if (type == AchievementPointTypes.DragonXP && viking.SelectedDragon != null) {
|
||||||
viking.SelectedDragon.PetXP = (viking.SelectedDragon.PetXP ?? 0) + (value ?? 0);
|
viking.SelectedDragon.PetXP = (viking.SelectedDragon.PetXP ?? 0) + (value ?? 0);
|
||||||
} else if (type != null) {
|
} else if (type != null) {
|
||||||
AchievementPoints xpPoints = viking.AchievementPoints.FirstOrDefault(a => a.Type == (int)type);
|
AchievementPoints xpPoints = viking.AchievementPoints.FirstOrDefault(a => a.Type == (int)type);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user