using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace AirBomber.Entities; public class EntityAirBomber : EntityAirPlane { public Color AdditionalColor { get; private set; } public void SetAdditionalColor(Color color) => AdditionalColor = color; /// /// Признак (опция) наличия бомб /// public bool Bombs { get; private set; } /// /// Признак (опция) наличия дополнительных топливных баков /// public bool FuelTanks { get; private set; } /// /// /// /// Скорость /// Вес /// Основной цвет /// Дополнительный цвет /// Признак наличия бомб /// Признак наличия дополнительных топливных баков public EntityAirBomber(int speed, double weight, Color bodyColor, Color additionalColor, bool bombs, bool fuelTanks) : base(speed, weight, bodyColor) { AdditionalColor = additionalColor; Bombs = bombs; FuelTanks = fuelTanks; } public override string[] GetStringRepresentation() { return new[] { nameof(EntityAirBomber), Speed.ToString(), Weight.ToString(), BodyColor.Name, AdditionalColor.Name, Bombs.ToString(), FuelTanks.ToString() }; } public static EntityAirBomber? CreateEntityAirBomber(string[] strs) { if (strs.Length != 7 || strs[0] != nameof(EntityAirBomber)) { return null; } return new EntityAirBomber(Convert.ToInt32(strs[1]), Convert.ToDouble(strs[2]), Color.FromName(strs[3]), Color.FromName(strs[4]), Convert.ToBoolean(strs[5]), Convert.ToBoolean(strs[6])); } }