SalvageWeatherMod.cs 1.1 KB

12345678910111213141516171819202122232425262728
  1. using Content.Shared.Weather;
  2. using Robust.Shared.Prototypes;
  3. using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
  4. using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List;
  5. namespace Content.Shared.Salvage.Expeditions.Modifiers;
  6. [Prototype("salvageWeatherMod")]
  7. public sealed partial class SalvageWeatherMod : IPrototype, IBiomeSpecificMod
  8. {
  9. [IdDataField] public string ID { get; private set; } = default!;
  10. [DataField("desc")] public LocId Description { get; private set; } = string.Empty;
  11. /// <inheritdoc/>
  12. [DataField("cost")]
  13. public float Cost { get; private set; } = 0f;
  14. /// <inheritdoc/>
  15. [DataField("biomes", customTypeSerializer: typeof(PrototypeIdListSerializer<SalvageBiomeModPrototype>))]
  16. public List<string>? Biomes { get; private set; } = null;
  17. /// <summary>
  18. /// Weather prototype to use on the planet.
  19. /// </summary>
  20. [DataField("weather", required: true, customTypeSerializer:typeof(PrototypeIdSerializer<WeatherPrototype>))]
  21. public string WeatherPrototype = string.Empty;
  22. }