using Core.Annotations;
using Core.Models.Common;
using Core.Models.Eft.Common.Tables;
using Core.Models.Spt.Config;
namespace Core.Helpers;
[Injectable]
public class BotHelper
{
///
/// Get a template object for the specified botRole from bots.types db
///
/// botRole to get template for
/// BotType object
public BotType GetBotTemplate(string role)
{
throw new NotImplementedException();
}
///
/// Is the passed in bot role a PMC (usec/bear/pmc)
///
/// bot role to check
/// true if is pmc
public bool IsBotPmc(string botRole)
{
throw new NotImplementedException();
}
public bool IsBotBoss(string botRole)
{
throw new NotImplementedException();
}
public bool IsBotFollower(string botRole)
{
throw new NotImplementedException();
}
///
/// Add a bot to the FRIENDLY_BOT_TYPES list
///
/// bot settings to alter
/// bot type to add to friendly list
public void AddBotToFriendlyList(DifficultyCategories difficultySettings, string typeToAdd)
{
throw new NotImplementedException();
}
///
/// Add a bot to the REVENGE_BOT_TYPES list
///
/// bot settings to alter
/// bot type to add to revenge list
public void AddBotToRevengeList(DifficultyCategories difficultySettings, string[] typesToAdd)
{
throw new NotImplementedException();
}
public bool RollChanceToBePmc(MinMax botConvertMinMax)
{
throw new NotImplementedException();
}
protected void GetPmcConversionValuesForLocation(string location)
{
throw new NotImplementedException();
}
///
/// is the provided role a PMC, case-agnostic
///
/// Role to check
/// True if role is PMC
public bool BotRoleIsPmc(string botRole)
{
throw new NotImplementedException();
}
///
/// Get randomization settings for bot from config/bot.json
///
/// level of bot
/// bot equipment json
/// RandomisationDetails
public RandomisationDetails GetBotRandomizationDetails(int botLevel, EquipmentFilters botEquipConfig)
{
throw new NotImplementedException();
}
///
/// Choose between pmcBEAR and pmcUSEC at random based on the % defined in pmcConfig.isUsec
///
/// pmc role
public string GetRandomizedPmcRole()
{
throw new NotImplementedException();
}
///
/// Get the corresponding side when pmcBEAR or pmcUSEC is passed in
///
/// role to get side for
/// side (usec/bear)
public string GetPmcSideByRole(string botRole)
{
throw new NotImplementedException();
}
///
/// Get a randomized PMC side based on bot config value 'isUsec'
///
/// pmc side as string
protected string GetRandomizedPmcSide()
{
throw new NotImplementedException();
}
///
/// Get a name from a PMC that fits the desired length
///
/// Max length of name, inclusive
/// OPTIONAL - what side PMC to get name from (usec/bear)
/// name of PMC
public string GetPmcNicknameOfMaxLength(int maxLength, string side = null)
{
throw new NotImplementedException();
}
}