namespace SpaceGame.Api.Shared.Runtime; internal static class KnownShipTypes { internal const string Resupplier = "resupplier"; internal const string Miner = "miner"; internal const string Carrier = "carrier"; internal const string Fighter = "fighter"; internal const string HeavyFighter = "heavyfighter"; internal const string Destroyer = "destroyer"; internal const string LargeMiner = "largeminer"; internal const string Freighter = "freighter"; internal const string Bomber = "bomber"; internal const string Scavenger = "scavenger"; internal const string Frigate = "frigate"; internal const string Transporter = "transporter"; internal const string Interceptor = "interceptor"; internal const string Scout = "scout"; internal const string Courier = "courier"; internal const string Builder = "builder"; internal const string Corvette = "corvette"; internal const string Police = "police"; internal const string Battleship = "battleship"; internal const string Gunboat = "gunboat"; internal const string Tug = "tug"; internal const string Compactor = "compactor"; } internal static class ShipTaxonomyExtensions { internal static string ToDataValue(this ShipPurpose purpose) => purpose switch { ShipPurpose.Auxiliary => "auxiliary", ShipPurpose.Build => "build", ShipPurpose.Fight => "fight", ShipPurpose.Mine => "mine", ShipPurpose.Trade => "trade", _ => purpose.ToString(), }; internal static string ToDataValue(this ShipType type) => type switch { ShipType.Resupplier => "resupplier", ShipType.Miner => "miner", ShipType.Carrier => "carrier", ShipType.Fighter => "fighter", ShipType.HeavyFighter => "heavyfighter", ShipType.Destroyer => "destroyer", ShipType.LargeMiner => "largeminer", ShipType.Freighter => "freighter", ShipType.Bomber => "bomber", ShipType.Scavenger => "scavenger", ShipType.Frigate => "frigate", ShipType.Transporter => "transporter", ShipType.Interceptor => "interceptor", ShipType.Scout => "scout", ShipType.Courier => "courier", ShipType.Builder => "builder", ShipType.Corvette => "corvette", ShipType.Police => "police", ShipType.Battleship => "battleship", ShipType.Gunboat => "gunboat", ShipType.Tug => "tug", ShipType.Compactor => "compactor", _ => type.ToString(), }; }