using Core.Annotations; using Core.Context; using Core.Helpers; using Core.Models.Eft.InRaid; using Core.Models.Enums; using Core.Models.Spt.Config; using Core.Servers; using Core.Services; using ILogger = Core.Models.Utils.ILogger; namespace Core.Controllers; [Injectable] public class InRaidController { protected ILogger _logger; protected SaveServer _saveServer; protected ProfileHelper _profileHelper; protected LocalisationService _localisationService; protected ApplicationContext _applicationContext; protected ConfigServer _configServer; protected InRaidConfig _inRaidConfig; protected BotConfig _botConfig; public InRaidController ( ILogger logger, SaveServer saveServer, ProfileHelper profileHelper, LocalisationService localisationService, ApplicationContext applicationContext, ConfigServer configServer ) { _logger = logger; _saveServer = saveServer; _profileHelper = profileHelper; _localisationService = localisationService; _applicationContext = applicationContext; _configServer = configServer; _inRaidConfig = configServer.GetConfig(ConfigTypes.IN_RAID); _botConfig = configServer.GetConfig(ConfigTypes.BOT); } /// /// Save locationId to active profiles in-raid object AND app context /// /// Session id /// Register player request public void AddPlayer( string sessionId, RegisterPlayerRequestData info) { throw new NotImplementedException(); } /// /// Handle raid/profile/scavsave /// Save profile state to disk /// Handles pmc/pscav /// /// /// public void SavePostRaidProfileForScav( ScavSaveRequestData offRaidProfileData, string sessionId) { throw new NotImplementedException(); } /// /// Get the inraid config from configs/inraid.json /// public InRaidConfig GetInRaidConfig() { return _inRaidConfig; } /// /// /// /// /// /// public float GetTraitorScavHostileChance( string url, string sessionId) { throw new NotImplementedException(); } /// /// /// /// /// /// public List GetBossConvertSettings( string url, string sessionId) { return _botConfig.AssaultToBossConversion.BossesToConvertToWeights.Keys.ToList(); } }