43 lines
1.3 KiB
C#
43 lines
1.3 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace WarmlyLocomotive
|
||
{
|
||
public class EntityLocomotive
|
||
{
|
||
/// <summary>
|
||
/// Скорость
|
||
/// </summary>
|
||
public int Speed { get; private set; }
|
||
/// <summary>
|
||
/// Вес
|
||
/// </summary>
|
||
public float Weight { get; private set; }
|
||
/// <summary>
|
||
/// Цвет кузова
|
||
/// </summary>
|
||
public Color BodyColor { get; private set; }
|
||
/// <summary>
|
||
/// Шаг перемещения локомотива
|
||
/// </summary>
|
||
public float Step => Speed * 100 / Weight;
|
||
/// <summary>
|
||
/// Инициализация полей объекта-класса локомотива
|
||
/// </summary>
|
||
/// <param name="speed"></param>
|
||
/// <param name="weight"></param>
|
||
/// <param name="bodyColor"></param>
|
||
/// <returns></returns>
|
||
public EntityLocomotive(int speed, float weight, Color bodyColor)
|
||
{
|
||
Random rnd = new();
|
||
Speed = speed <= 0 ? rnd.Next(50, 150) : speed;
|
||
Weight = weight <= 0 ? rnd.Next(40, 70) : weight;
|
||
BodyColor = bodyColor;
|
||
}
|
||
}
|
||
}
|