mirror of
https://github.com/morbalint/kemkas-backend.git
synced 2026-07-17 21:23:46 +00:00
66 lines
3.0 KiB
C#
66 lines
3.0 KiB
C#
using Kemkas.Web.Db.Enums;
|
|
using Kemkas.Web.Db.Models;
|
|
using Kemkas.Web.ViewModels;
|
|
|
|
namespace Kemkas.Web.Services.SecondEdition.Character;
|
|
|
|
public interface ICharacterDbModelToDto2EService
|
|
{
|
|
public Karakter2eDto Convert(V2Karakter entity);
|
|
}
|
|
|
|
public class CharacterDbModelToDto2EService : ICharacterDbModelToDto2EService
|
|
{
|
|
public Karakter2eDto Convert(V2Karakter entity)
|
|
{
|
|
return new Karakter2eDto
|
|
{
|
|
Nev = entity.Nev,
|
|
Nem = entity.Nem,
|
|
Kor = entity.Kor,
|
|
Jellem = entity.Jellem.Convert(),
|
|
Isten = entity.Isten,
|
|
Faj = entity.Faj.Convert(),
|
|
Tulajdonsagok = new KarakterTulajdonsagokDto
|
|
{
|
|
Ero = entity.Ero,
|
|
Ugy = entity.Ugyesseg,
|
|
Egs = entity.Egeszseg,
|
|
Int = entity.Intelligencia,
|
|
Bol = entity.Bolcsesseg,
|
|
Kar = entity.Karizma,
|
|
},
|
|
Kepzettsegek = entity.KarakterKepzettsegek.Where(x => !x.IsTolvajKepzettseg).Select(x => x.Kepzettseg.Convert()).ToList(),
|
|
Tolvajkepzettsegek = entity.KarakterKepzettsegek.Where(x => x.IsTolvajKepzettseg).Select(x => x.Kepzettseg.Convert()).ToList(),
|
|
Szint = entity.Szint,
|
|
Felszereles = new KarakterFelszereles2eDto
|
|
{
|
|
PajzsId = entity.Pajzs,
|
|
PancelId = entity.Pancel,
|
|
Fegyverek = entity.Felszereles.Where(x => x.IsFegyver).Select(x => new FelszerelesIdAndCount { Id = x.TargyId, Count = x.Count}).ToList(),
|
|
Viselt = entity.Felszereles.Where(x => x.IsViselt).Select(x => new FelszerelesIdAndCount { Id = x.TargyId, Count = x.Count}).ToList(),
|
|
Cipelt = entity.Felszereles.Where(x => x.IsCipelt).Select(x => new FelszerelesIdAndCount { Id = x.TargyId, Count = x.Count}).ToList(),
|
|
Aprosagok = entity.Felszereles.Where(x => x.IsAprosag).Select(x => new FelszerelesIdAndCount { Id = x.TargyId, Count = x.Count}).ToList(),
|
|
AranyTaller = entity.AranyTaller,
|
|
ElektrumTaller = entity.ElektrumTaller,
|
|
EzustTaller = entity.EzustTaller,
|
|
},
|
|
IsPublic = entity.IsPublic,
|
|
Szintlepesek = entity.Szintlepesek.OrderBy(x => x.KarakterSzint).Select(sz => new Szintlepes
|
|
{
|
|
Osztaly = sz.Osztaly.Convert(),
|
|
KalozKritikus = sz.Osztaly == Osztaly2E.Tengeresz ? sz.FegyverSpecializacio : null,
|
|
HarcosFegyver = sz.Osztaly == Osztaly2E.Harcos ? sz.FegyverSpecializacio : null,
|
|
TulajdonsagNoveles = sz.TulajdonsagNoveles?.Convert(),
|
|
HProll = sz.HpRoll,
|
|
TolvajExtraKepzettseg = sz.TolvajExtraKepzettseg?.Convert()
|
|
}).ToList(),
|
|
Varazslatok = entity.Varazslatok.Select(v => new KarakterVarazslat2eDto
|
|
{
|
|
Bekeszitve = v.Bekeszitve,
|
|
VarazslatId = v.VarazslatId,
|
|
Osztaly = v.Osztaly.Convert()
|
|
}).ToList(),
|
|
};
|
|
}
|
|
} |