Browse Source

Adding Parent Connection for Parts

main
Jonathan 1 year ago
parent
commit
25776b3b00
  1. 3
      IGP/Pages/DataTables/Parts/WeaponTable.razor
  2. 8
      Model/Entity/EntityModel.cs
  3. 1
      Model/Entity/Parts/IEntityPartInterface.cs

3
IGP/Pages/DataTables/Parts/WeaponTable.razor

@ -1,11 +1,12 @@
<h3>WeaponTable</h3>
<MudDataGrid Items="@_entityWeapons.Take(4)">
<MudDataGrid Items="@_entityWeapons">
<Columns>
<PropertyColumn Property="x => x.Range" Title="Range"/>
<PropertyColumn Property="x => x.Damage" Title="Damage"/>
<PropertyColumn Property="x => x.AttacksPerSecond" Title="Attacks Per Second"/>
<PropertyColumn Property="x => x.Parent.GetName()" Title="Owner Name"/>
</Columns>
</MudDataGrid>

8
Model/Entity/EntityModel.cs

@ -38,6 +38,12 @@ public class EntityModel
public bool IsSpeculative { get; set; }
public string Descriptive { get; set; } = DescriptiveType.None;
public string GetName()
{
var entityInfo = EntityParts.FirstOrDefault(a => a.GetType() == typeof(EntityInfoModel)) as EntityInfoModel;
return entityInfo == null ? string.Empty : entityInfo.Name;
}
public string AsYaml()
{
@ -63,6 +69,8 @@ public class EntityModel
public EntityModel AddPart(IEntityPartInterface unitPart)
{
unitPart.Parent = this;
EntityParts.Add(unitPart);
return this;
}

1
Model/Entity/Parts/IEntityPartInterface.cs

@ -2,4 +2,5 @@
public class IEntityPartInterface
{
public EntityModel Parent { get; set; }
}
Loading…
Cancel
Save