Fixed types + Implemented QuestController/helper method

This commit is contained in:
Chomp
2025-01-12 19:12:35 +00:00
parent d90638e078
commit 9269705eee
5 changed files with 39 additions and 9 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
using Core.Annotations;
using Core.Annotations;
using Core.Controllers;
using Core.DI;
using Core.Models.Eft.Common;
+2 -2
View File
@@ -1,4 +1,4 @@
using Core.Annotations;
using Core.Annotations;
using Core.Models.Eft.Profile;
using Core.Services;
@@ -22,7 +22,7 @@ public class AchievementController
public GetAchievementsResponse GetAchievements(string sessionID)
{
return new()
return new GetAchievementsResponse
{
Achievements = _databaseService.GetAchievements()
};
+9 -1
View File
@@ -1,4 +1,5 @@
using Core.Annotations;
using Core.Helpers;
using Core.Models.Eft.Common;
using Core.Models.Eft.Common.Tables;
using Core.Models.Eft.ItemEvent;
@@ -9,6 +10,13 @@ namespace Core.Controllers;
[Injectable]
public class QuestController
{
private readonly QuestHelper _questHelper;
public QuestController(
QuestHelper questHelper)
{
_questHelper = questHelper;
}
// TODO
public ItemEventRouterResponse CompleteQuest(PmcData pmcData, CompleteQuestRequestData info, string sessionId)
{
@@ -32,6 +40,6 @@ public class QuestController
public List<Quest> GetClientQuest(string sessionId)
{
throw new NotImplementedException();
return _questHelper.GetClientQuests(sessionId);
}
}
+22 -3
View File
@@ -1,16 +1,35 @@
using Core.Annotations;
using Core.Annotations;
using Core.Models.Eft.Common;
using Core.Models.Eft.Common.Tables;
using Core.Models.Eft.Hideout;
using Core.Models.Eft.ItemEvent;
using Core.Models.Eft.Quests;
using Core.Models.Enums;
using Core.Services;
using ILogger = Core.Models.Utils.ILogger;
namespace Core.Helpers;
[Injectable]
public class QuestHelper
{
private readonly ILogger _logger;
private readonly DatabaseService _databaseService;
private readonly QuestConditionHelper _questConditionHelper;
private readonly ProfileHelper _profileHelper;
public QuestHelper(
ILogger logger,
DatabaseService databaseService,
QuestConditionHelper questConditionHelper,
ProfileHelper profileHelper)
{
_logger = logger;
_databaseService = databaseService;
_questConditionHelper = questConditionHelper;
_profileHelper = profileHelper;
}
/// <summary>
/// Get status of a quest in player profile by its id
/// </summary>
@@ -292,7 +311,7 @@ public class QuestHelper
*/
public List<Quest> GetQuestsFromDb()
{
throw new NotImplementedException();
return _databaseService.GetQuests().Values.ToList();
}
/**
@@ -579,7 +598,7 @@ public class QuestHelper
* @param playerLevel level of player to test against quest
* @returns true if quest can be seen/accepted by player of defined level
*/
protected bool PlayerLevelFulfillsQuestRequirement(Quest quest, int playerLevel)
protected bool PlayerLevelFulfillsQuestRequirement(Quest quest, double playerLevel)
{
throw new NotImplementedException();
}
+5 -2
View File
@@ -1,4 +1,4 @@
using System.Text.Json.Serialization;
using System.Text.Json.Serialization;
using Core.Models.Enums;
using Core.Utils.Json.Converters;
@@ -12,6 +12,9 @@ public class Quest
[JsonPropertyName("QuestName")]
public string? QuestName { get; set; }
/// <summary>
/// _id
/// </summary>
[JsonPropertyName("_id")]
public string? Id { get; set; }
@@ -115,7 +118,7 @@ public class Quest
/// Status of quest to player
/// </summary>
[JsonPropertyName("sptStatus")]
public QuestStatus? SptStatus { get; set; }
public QuestStatusEnum? SptStatus { get; set; }
[JsonPropertyName("questStatus")]
public QuestStatus? QuestStatus { get; set; }