namespace ProjectCruiser.Entities; /// /// Класс-сущность "крейсер" /// public class EntityCruiser { //свойства /// /// Скорость /// public int Speed { get; private set; } /// /// Вес /// public double Weight { get; private set; } /// /// Основной цвет /// public Color BodyColor { get; private set; } public void setBodyColor(Color color) { BodyColor = color; } /// /// Шаг перемещения автомобиля /// public double Step => Speed * 100 / Weight; /// /// Инициализация полей объекта-класса крейсера /// /// скорость /// вес /// основной цвет public EntityCruiser(int speed, double weight, Color bodyColor) { Speed = speed; Weight = weight; BodyColor = bodyColor; } /// /// Получение строк со значениями свойств объекта класса-сущности /// /// public virtual string[] GetStringRepresentation() { return new[] { nameof(EntityCruiser), Speed.ToString(), Weight.ToString(), BodyColor.Name }; } /// /// Создание объекта из массива строк /// /// /// public static EntityCruiser? CreateEntityCruiser(string[] strs) { if (strs.Length != 4 || strs[0] != nameof(EntityCruiser)) { return null; } return new EntityCruiser(Convert.ToInt32(strs[1]), Convert.ToDouble(strs[2]), Color.FromName(strs[3])); } }