using Content.Shared.Random;
using Content.Shared.Research.Prototypes;
using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
namespace Content.Shared.Research.TechnologyDisk.Components;
[RegisterComponent, NetworkedComponent]
[AutoGenerateComponentState]
public sealed partial class TechnologyDiskComponent : Component
{
///
/// A discipline to constrain the disk to.
///
[DataField, AutoNetworkedField]
public ProtoId? Discipline;
///
/// A tier to constrain the disk to.
///
[DataField, AutoNetworkedField]
public int? Tier;
///
/// The recipe that will be added. If null, one will be randomly generated
///
[DataField, AutoNetworkedField]
public List>? Recipes;
///
/// A weighted random prototype for how rare each tier should be.
///
[DataField]
public ProtoId TierWeightPrototype = "TechDiskTierWeights";
///
/// Mapping of disk tiers to disk prices.
///
[DataField]
public Dictionary DiskPricePerTier = new()
{
[1] = 50,
[2] = 135,
[3] = 1000,
};
}