2024-07-19 17:08:37 +00:00
|
|
|
|
using System.ComponentModel.DataAnnotations;
|
2024-07-19 20:00:13 +00:00
|
|
|
|
using System.Globalization;
|
2024-07-19 17:08:37 +00:00
|
|
|
|
|
2024-08-15 19:46:43 +00:00
|
|
|
|
namespace StarsAssistant.Model;
|
2024-07-19 17:08:37 +00:00
|
|
|
|
|
|
|
|
|
public class Planet
|
|
|
|
|
{
|
2024-09-25 17:01:49 +00:00
|
|
|
|
#region Persistant propeties (from Stars)
|
2024-08-18 17:21:18 +00:00
|
|
|
|
|
2024-08-15 20:17:12 +00:00
|
|
|
|
[Key]
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public required string Name { get; set; }
|
|
|
|
|
|
2024-09-24 20:32:13 +00:00
|
|
|
|
public string OwnerId { get; set; } = String.Empty;
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-09-22 16:54:16 +00:00
|
|
|
|
public string StarbaseType { get; set; } = String.Empty;
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int ReportAge { get; set; } = 0;
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? Population { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? Value { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? Mines { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? Factories { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public decimal? DefPercent { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? SurfaceIronium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? SurfaceBoranium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? SurfaceGermanium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? MRIronium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? MRBoranium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? MRGermanium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? MCIronium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? MCBoranium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-08-15 20:17:12 +00:00
|
|
|
|
public int? MCGermanium { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? Resources { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public decimal? Gravity { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public decimal? Temperature { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public decimal? Radiation { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public decimal? GravityOrig { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public decimal? TemperatureOrig { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public decimal? RadiationOrig { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? MaxTerraforming { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? CapacityPercent { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? ScanRange { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? PenScanRange { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? Driver { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? DriverWarp { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-09-24 20:32:13 +00:00
|
|
|
|
public string RouteTarget { get; set; } = String.Empty;
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? GateRange { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? GateMass { get; set; }
|
2024-07-19 20:00:13 +00:00
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
public int? PctDamage { get; set; }
|
2024-08-18 17:21:18 +00:00
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
2024-09-25 17:01:49 +00:00
|
|
|
|
#region Planning Properties
|
|
|
|
|
|
|
|
|
|
public int PopulationTargetPercent { get; set; } = 100;
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
|
2024-08-18 17:21:18 +00:00
|
|
|
|
#region Relationships
|
|
|
|
|
|
|
|
|
|
public Race? Owner { get; set; }
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
2024-07-19 17:08:37 +00:00
|
|
|
|
}
|