using ProjectStormtrooper.Entities; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ProjectStormtrooper.Drawnings { public static class ExtentionDrawningStormtrooper { /// /// Разделитель для записи информации по объекту в файл /// private static readonly string _separatorForObject = ":"; /// /// Создание объекта из строки /// /// Строка с данными для создания объекта /// Объект public static DrawningStormtrooperBase? CreateDrawningStormtrooper(this string info) { string[] strs = info.Split(_separatorForObject); EntityStormtrooperBase? stormtrooper = EntityStormtrooper.CreateEntityStormtrooper(strs); if (stormtrooper != null) { return new DrawingStormtrooper((EntityStormtrooper)stormtrooper); } stormtrooper = EntityStormtrooperBase.CreateEntityBaseStormtrooper(strs); if (stormtrooper != null) { return new DrawningStormtrooperBase(stormtrooper); } return null; } /// /// Получение данных для сохранения в файл /// /// Сохраняемый объект /// Строка с данными по объекту public static string GetDataForSave(this DrawningStormtrooperBase drawningBaseStormtrooper) { string[]? array = drawningBaseStormtrooper?.EntityStormtrooperBase?.GetStringRepresentation(); if (array == null) { return string.Empty; } return string.Join(_separatorForObject, array); } } }