61 lines
1.9 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

namespace Battleship.Entities;
/// <summary>
/// Класс-сущность Линкор
/// </summary>
public class EntityBattleship : EntityWarship
{
/// <summary>
/// Скорость
/// </summary>
public int Speed { get; private set; }
/// <summary>
/// Вес
/// </summary>
public double Weight { get; private set; }
/// <summary>
/// Основной цвет
/// </summary>
public Color BodyColor { get; private set; }
/// /// <summary>
/// Признак (опция) отсека для ракет
/// </summary>
public bool Compartment { get; private set; }
/// <summary>
/// Признак (опция) наличия башни
/// </summary>
public bool Tower { get; private set; }
/// <summary>
/// Признак (опция) наличия палубы
/// </summary>
public bool BodyDeck { get; private set; }
/// <summary>
/// Дополнительный цвет (для опциональных элементов)
/// </summary>
public Color AdditionalColor { get; private set; }
public void SetAdditionalColor(Color color)
{
AdditionalColor = color;
}
/// <summary>
/// Перемещение линкора
/// </summary>
public double Step => Speed * 100 / Weight;
/// <summary>
/// Инициализация полей объекта-класса линкора
/// </summary>
/// <param name="speed"></param>
/// <param name="weight"></param>
/// <param name="bodyColor"></param>
public EntityBattleship(int speed, double weight, Color bodyColor, bool compartment, bool tower, bool bodyDeck, Color additionalColor) : base(speed, weight, bodyColor)
{
Speed = speed;
Weight = weight;
BodyColor = bodyColor;
Compartment = compartment;
Tower = tower;
BodyDeck = bodyDeck;
AdditionalColor = additionalColor;
}
}