using System.ComponentModel.DataAnnotations; using System.Globalization; namespace StarsAssistant.Model; public class Planet { #region Persistant propeties (from Stars) [Key] public required string Name { get; set; } public string OwnerId { get; set; } = String.Empty; public string StarbaseType { get; set; } = String.Empty; public int ReportAge { get; set; } = 0; public int? Population { get; set; } public int? Value { get; set; } public int? Mines { get; set; } public int? Factories { get; set; } public decimal? DefPercent { get; set; } public int? SurfaceIronium { get; set; } public int? SurfaceBoranium { get; set; } public int? SurfaceGermanium { get; set; } public int? MRIronium { get; set; } public int? MRBoranium { get; set; } public int? MRGermanium { get; set; } public int? MCIronium { get; set; } public int? MCBoranium { get; set; } public int? MCGermanium { get; set; } public int? Resources { get; set; } public decimal? Gravity { get; set; } public decimal? Temperature { get; set; } public decimal? Radiation { get; set; } public decimal? GravityOrig { get; set; } public decimal? TemperatureOrig { get; set; } public decimal? RadiationOrig { get; set; } public int? MaxTerraforming { get; set; } public int? CapacityPercent { get; set; } public int? ScanRange { get; set; } public int? PenScanRange { get; set; } public int? Driver { get; set; } public int? DriverWarp { get; set; } public string RouteTarget { get; set; } = String.Empty; public int? GateRange { get; set; } public int? GateMass { get; set; } public int? PctDamage { get; set; } #endregion #region Planning Properties public int PopulationTargetPercent { get; set; } = 100; #endregion #region Relationships public Race? Owner { get; set; } #endregion }