Files
SPT-Server-Build/Libraries/Core/Models/Spt/Bots/GenerateEquipmentProperties.cs
T
Chomp 1ff8d2cbef Replaced lists containing unique values with HashSets
Reworked Soft Insert id checks

Improved dogtag id lookup memory usage

Removed wave cleanup code
2025-02-17 19:05:47 +00:00

98 lines
2.0 KiB
C#

using System.Text.Json.Serialization;
using Core.Models.Eft.Common.Tables;
using Core.Models.Enums;
using Core.Models.Spt.Config;
namespace Core.Models.Spt.Bots;
public record GenerateEquipmentProperties
{
/// <summary>
/// Root Slot being generated
/// </summary>
[JsonPropertyName("rootEquipmentSlot")]
public EquipmentSlots RootEquipmentSlot
{
get;
set;
}
/// <summary>
/// Equipment pool for root slot being generated
/// </summary>
[JsonPropertyName("rootEquipmentPool")]
public Dictionary<string, double>? RootEquipmentPool
{
get;
set;
}
[JsonPropertyName("modPool")]
public GlobalMods? ModPool
{
get;
set;
}
/// <summary>
/// Dictionary of mod items and their chance to spawn for this bot type
/// </summary>
[JsonPropertyName("spawnChances")]
public Chances? SpawnChances
{
get;
set;
}
/// <summary>
/// Bot-specific properties
/// </summary>
[JsonPropertyName("botData")]
public BotData? BotData
{
get;
set;
}
[JsonPropertyName("inventory")]
public BotBaseInventory? Inventory
{
get;
set;
}
[JsonPropertyName("botEquipmentConfig")]
public EquipmentFilters? BotEquipmentConfig
{
get;
set;
}
/// <summary>
/// Settings from bot.json to adjust how item is generated
/// </summary>
[JsonPropertyName("randomisationDetails")]
public RandomisationDetails? RandomisationDetails
{
get;
set;
}
/// <summary>
/// OPTIONAL - Do not generate mods for tpls in this array
/// </summary>
[JsonPropertyName("generateModsBlacklist")]
public HashSet<string>? GenerateModsBlacklist
{
get;
set;
}
[JsonPropertyName("generatingPlayerLevel")]
public double? GeneratingPlayerLevel
{
get;
set;
}
}