using Core.Models.Eft.Common;
using Core.Models.Eft.Common.Tables;
using Core.Models.Spt.Config;
namespace Core.Generators;
public class PlayerScavGenerator
{
private PlayerScavConfig _playerScavConfig;
public PlayerScavGenerator()
{
}
///
/// Update a player profile to include a new player scav profile
///
/// session id to specify what profile is updated
/// profile object
public PmcData Generate(string sessionID)
{
throw new NotImplementedException();
}
///
/// Add items picked from `playerscav.lootItemsToAddChancePercent`
///
/// dict of tpl + % chance to be added
///
/// Possible slotIds to add loot to
protected void AddAdditionalLootToPlayerScavContainers(Dictionary possibleItemsToAdd, BotBase scavData, List containersToAddTo)
{
throw new NotImplementedException();
}
///
/// Get the scav karama level for a profile
/// Is also the fence trader rep level
///
/// pmc profile
/// karma level
protected double GetScavKarmaLevel(PmcData pmcData)
{
throw new NotImplementedException();
}
///
/// Get a baseBot template
/// If the parameter doesnt match "assault", take parts from the loot type and apply to the return bot template
///
/// bot type to use for inventory/chances
/// IBotType object
protected BotType ConstructBotBaseTemplate(string botTypeForLoot)
{
throw new NotImplementedException();
}
///
/// Adjust equipment/mod/item generation values based on scav karma levels
///
/// Values to modify the bot template with
/// bot template to modify according to karama level settings
protected void AdjustBotTemplateWithKarmaSpecificSettings(KarmaLevel karmaSettings, BotType baseBotNode)
{
throw new NotImplementedException();
}
protected Skills GetScavSkills(PmcData scavProfile)
{
throw new NotImplementedException();
}
protected Skills GetDefaultScavSkills()
{
throw new NotImplementedException();
}
protected Stats GetScavStats(PmcData scavProfile)
{
throw new NotImplementedException();
}
protected int GetScavLevel(PmcData scavProfile)
{
throw new NotImplementedException();
}
protected int GetScavExperience(PmcData scavProfile)
{
throw new NotImplementedException();
}
///
/// Set cooldown till scav is playable
/// take into account scav cooldown bonus
///
/// scav profile
/// pmc profile
///
protected PmcData SetScavCooldownTimer(PmcData scavData, PmcData pmcData)
{
throw new NotImplementedException();
}
}