Files
SPT-Server-Build/Core/Models/Spt/Config/InsuranceConfig.cs
T

56 lines
2.0 KiB
C#

using System.Text.Json.Serialization;
namespace Core.Models.Spt.Config;
public class InsuranceConfig : BaseConfig
{
[JsonPropertyName("kind")]
public string Kind { get; set; } = "spt-insurance";
/// <summary>
/// Chance item is returned as insurance, keyed by trader id
/// </summary>
[JsonPropertyName("returnChancePercent")]
public Dictionary<string, double> ReturnChancePercent { get; set; }
/// <summary>
/// Item slots that should never be returned as insurance
/// </summary>
[JsonPropertyName("blacklistedEquipment")]
public List<string> BlacklistedEquipment { get; set; }
/// <summary>
/// Some slots should always be removed, e.g. 'cartridges'
/// </summary>
[JsonPropertyName("slotIdsToAlwaysRemove")]
public List<string> SlotIdsToAlwaysRemove { get; set; }
/// <summary>
/// Override to control how quickly insurance is processed/returned in seconds
/// </summary>
[JsonPropertyName("returnTimeOverrideSeconds")]
public double ReturnTimeOverrideSeconds { get; set; }
/// <summary>
/// Override to control how long insurance returns stay in mail before expiring - in seconds
/// </summary>
[JsonPropertyName("storageTimeOverrideSeconds")]
public double StorageTimeOverrideSeconds { get; set; }
/// <summary>
/// How often server should process insurance in seconds
/// </summary>
[JsonPropertyName("runIntervalSeconds")]
public double RunIntervalSeconds { get; set; }
// Lowest rouble price for an attachment to be allowed to be taken
[JsonPropertyName("minAttachmentRoublePriceToBeTaken")]
public double MinAttachmentRoublePriceToBeTaken { get; set; }
// Chance out of 100% no attachments from a parent are taken
[JsonPropertyName("chanceNoAttachmentsTakenPercent")]
public double ChanceNoAttachmentsTakenPercent { get; set; }
[JsonPropertyName("simulateItemsBeingTaken")]
public bool SimulateItemsBeingTaken { get; set; }
}