Refactor serialization copying to use source generators (#19412)

This commit is contained in:
DrSmugleaf
2023-08-22 18:14:33 -07:00
committed by GitHub
parent 08b43990ab
commit a88e747a0b
1737 changed files with 2532 additions and 2521 deletions

View File

@@ -13,19 +13,19 @@ namespace Content.Shared.Salvage.Expeditions.Modifiers;
public sealed class SalvageAirMod : IPrototype, IBiomeSpecificMod
{
[IdDataField]
public string ID { get; } = default!;
public string ID { get; private set; } = default!;
/// <inheritdoc/>
[DataField("desc")]
public string Description { get; } = string.Empty;
public string Description { get; private set; } = string.Empty;
/// <inheritdoc/>
[DataField("cost")]
public float Cost { get; } = 0f;
public float Cost { get; private set; } = 0f;
/// <inheritdoc/>
[DataField("biomes", customTypeSerializer: typeof(PrototypeIdListSerializer<SalvageBiomeMod>))]
public List<string>? Biomes { get; } = null;
public List<string>? Biomes { get; private set; } = null;
/// <summary>
/// Set to true if this planet will have no atmosphere.

View File

@@ -12,13 +12,13 @@ public sealed class SalvageBiomeMod : IPrototype, ISalvageMod
{
[IdDataField] public string ID { get; } = default!;
[DataField("desc")] public string Description { get; } = string.Empty;
[DataField("desc")] public string Description { get; private set; } = string.Empty;
/// <summary>
/// Cost for difficulty modifiers.
/// </summary>
[DataField("cost")]
public float Cost { get; } = 0f;
public float Cost { get; private set; } = 0f;
/// <summary>
/// Is weather allowed to apply to this biome.

View File

@@ -10,15 +10,15 @@ public sealed class SalvageDungeonMod : IPrototype, IBiomeSpecificMod
{
[IdDataField] public string ID { get; } = default!;
[DataField("desc")] public string Description { get; } = string.Empty;
[DataField("desc")] public string Description { get; private set; } = string.Empty;
/// <inheridoc/>
[DataField("cost")]
public float Cost { get; } = 0f;
public float Cost { get; private set; } = 0f;
/// <inheridoc/>
[DataField("biomes", customTypeSerializer: typeof(PrototypeIdListSerializer<SalvageBiomeMod>))]
public List<string>? Biomes { get; } = null;
public List<string>? Biomes { get; private set; } = null;
/// <summary>
/// The config to use for spawning the dungeon.

View File

@@ -8,15 +8,15 @@ public sealed class SalvageLightMod : IPrototype, IBiomeSpecificMod
{
[IdDataField] public string ID { get; } = default!;
[DataField("desc")] public string Description { get; } = string.Empty;
[DataField("desc")] public string Description { get; private set; } = string.Empty;
/// <inheritdoc/>
[DataField("cost")]
public float Cost { get; } = 0f;
public float Cost { get; private set; } = 0f;
/// <inheritdoc/>
[DataField("biomes", customTypeSerializer: typeof(PrototypeIdListSerializer<SalvageBiomeMod>))]
public List<string>? Biomes { get; } = null;
public List<string>? Biomes { get; private set; } = null;
[DataField("color", required: true)] public Color? Color;
}

View File

@@ -10,11 +10,11 @@ public sealed class SalvageMod : IPrototype, ISalvageMod
{
[IdDataField] public string ID { get; } = default!;
[DataField("desc")] public string Description { get; } = string.Empty;
[DataField("desc")] public string Description { get; private set; } = string.Empty;
/// <summary>
/// Cost for difficulty modifiers.
/// </summary>
[DataField("cost")]
public float Cost { get; } = 0f;
public float Cost { get; private set; } = 0f;
}

View File

@@ -9,15 +9,15 @@ public sealed class SalvageTemperatureMod : IPrototype, IBiomeSpecificMod
{
[IdDataField] public string ID { get; } = default!;
[DataField("desc")] public string Description { get; } = string.Empty;
[DataField("desc")] public string Description { get; private set; } = string.Empty;
/// <inheritdoc/>
[DataField("cost")]
public float Cost { get; } = 0f;
public float Cost { get; private set; } = 0f;
/// <inheritdoc/>
[DataField("biomes", customTypeSerializer: typeof(PrototypeIdListSerializer<SalvageBiomeMod>))]
public List<string>? Biomes { get; } = null;
public List<string>? Biomes { get; private set; } = null;
/// <summary>
/// Temperature in the planets air mix.

View File

@@ -7,13 +7,13 @@ public sealed class SalvageTimeMod : IPrototype, ISalvageMod
{
[IdDataField] public string ID { get; } = default!;
[DataField("desc")] public string Description { get; } = string.Empty;
[DataField("desc")] public string Description { get; private set; } = string.Empty;
/// <summary>
/// Cost for difficulty modifiers.
/// </summary>
[DataField("cost")]
public float Cost { get; }
public float Cost { get; private set; }
[DataField("minDuration")]
public int MinDuration = 630;

View File

@@ -10,15 +10,15 @@ public sealed class SalvageWeatherMod : IPrototype, IBiomeSpecificMod
{
[IdDataField] public string ID { get; } = default!;
[DataField("desc")] public string Description { get; } = string.Empty;
[DataField("desc")] public string Description { get; private set; } = string.Empty;
/// <inheritdoc/>
[DataField("cost")]
public float Cost { get; } = 0f;
public float Cost { get; private set; } = 0f;
/// <inheritdoc/>
[DataField("biomes", customTypeSerializer: typeof(PrototypeIdListSerializer<SalvageBiomeMod>))]
public List<string>? Biomes { get; } = null;
public List<string>? Biomes { get; private set; } = null;
/// <summary>
/// Weather prototype to use on the planet.

View File

@@ -28,7 +28,7 @@ public sealed class SalvageExpeditionConsoleState : BoundUserInterfaceState
/// Used to interact with salvage expeditions and claim them.
/// </summary>
[RegisterComponent, NetworkedComponent]
public sealed class SalvageExpeditionConsoleComponent : Component
public sealed partial class SalvageExpeditionConsoleComponent : Component
{
}
@@ -43,7 +43,7 @@ public sealed class ClaimSalvageMessage : BoundUserInterfaceMessage
/// Added per station to store data on their available salvage missions.
/// </summary>
[RegisterComponent]
public sealed class SalvageExpeditionDataComponent : Component
public sealed partial class SalvageExpeditionDataComponent : Component
{
/// <summary>
/// Is there an active salvage expedition.

View File

@@ -9,13 +9,13 @@ public sealed class SalvageFactionPrototype : IPrototype, ISalvageMod
{
[IdDataField] public string ID { get; } = default!;
[DataField("desc")] public string Description { get; } = string.Empty;
[DataField("desc")] public string Description { get; private set; } = string.Empty;
/// <summary>
/// Cost for difficulty modifiers.
/// </summary>
[DataField("cost")]
public float Cost { get; } = 0f;
public float Cost { get; private set; } = 0f;
[ViewVariables(VVAccess.ReadWrite), DataField("groups", required: true)]
public List<SalvageMobGroup> MobGroups = default!;

View File

@@ -3,7 +3,7 @@ using Content.Shared.Storage;
namespace Content.Shared.Salvage.Expeditions;
[DataDefinition]
public record struct SalvageMobGroup()
public partial record struct SalvageMobGroup()
{
// A mob may be cheap but rare or expensive but frequent.

View File

@@ -4,7 +4,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Salvage.Expeditions;
[NetworkedComponent]
public abstract class SharedSalvageExpeditionComponent : Component
public abstract partial class SharedSalvageExpeditionComponent : Component
{
[ViewVariables(VVAccess.ReadWrite), DataField("stage")]
public ExpeditionStage Stage = ExpeditionStage.Added;

View File

@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Shared.Salvage;
public abstract class SharedSalvageMagnetComponent : Component
public abstract partial class SharedSalvageMagnetComponent : Component
{
/// <summary>
/// The machine part that affects the attaching and cooldown times