1
0
Fork 0
mirror of https://github.com/Nioux/AideDeJeu.git synced 2025-10-29 14:35:45 +00:00

SubItems en yaml + md

This commit is contained in:
Maniez Yan 2019-01-23 12:47:35 +01:00
parent 21db82d88a
commit 5c0ba5cc2e
19 changed files with 83773 additions and 132 deletions

View file

@ -5,7 +5,7 @@ using System.Text;
namespace AideDeJeuLib
{
public class Equipments : Item
public class Equipments : FilteredItems
{
public override FilterViewModel GetNewFilterViewModel()
{

View file

@ -0,0 +1,48 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using AideDeJeu.ViewModels;
using YamlDotNet.Serialization;
namespace AideDeJeuLib
{
public class FilteredItems : Items
{
[IgnoreDataMember]
[YamlMember]
public List<Item> SubItems
{
get
{
return _Items;
}
set
{
}
}
public override string Markdown
{
get
{
if (_Items != null)
{
var md = string.Empty;
foreach (var item in _Items)
{
md += item.Markdown;
}
return md;
}
return null;
}
set
{
}
}
}
}

View file

@ -19,7 +19,7 @@ namespace AideDeJeuLib
[DataContract]
public class Item //: IList<Item>
{
private List<Item> _Items;
protected List<Item> _Items;
public Item(List<Item> items)
{
@ -64,6 +64,11 @@ namespace AideDeJeuLib
return null;
}
public virtual async Task LoadFilteredItemsAsync()
{
_Items = (await GetChildrenAsync()).ToList();
}
//public int IndexOf(Item item)
//{
// return _Items.IndexOf(item);
@ -209,6 +214,7 @@ namespace AideDeJeuLib
{ "MagicItem", typeof(MagicItem) },
{ "MagicItems", typeof(MagicItems) },
{ "PageItem", typeof(PageItem) },
{ "ListItems", typeof(List<Items>) },
};
[IgnoreDataMember]

View file

@ -2,103 +2,15 @@
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using AideDeJeu.ViewModels;
using YamlDotNet.Serialization;
namespace AideDeJeuLib
{
public class Items : Item //, IList<Item>
public class Items : Item
{
}
//public Items(List<Item> items) : base(items)
//{
//}
//public Items(IEnumerable<Item> items) : base(items)
//{
//}
//public Items() : base()
//{
//}*/
/* private List<Item> _Items;
public Items(List<Item> items)
{
_Items = items;
}
public Items(IEnumerable<Item> items)
{
_Items = items.ToList();
}
public Items()
{
_Items = new List<Item>();
}
public string Header { get; set; }
public int Count => _Items.Count();
public bool IsReadOnly => false;
public Item this[int index] { get => _Items[index]; set => _Items[index] = value; }
public IEnumerator<Item> GetEnumerator()
{
return _Items?.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return _Items?.GetEnumerator();
}
public virtual FilterViewModel GetNewFilterViewModel()
{
return null;
}
public int IndexOf(Item item)
{
return _Items.IndexOf(item);
}
public void Insert(int index, Item item)
{
_Items.Insert(index, item);
}
public void RemoveAt(int index)
{
_Items.RemoveAt(index);
}
public void Add(Item item)
{
_Items.Add(item);
}
public void Clear()
{
_Items.Clear();
}
public bool Contains(Item item)
{
return _Items.Contains(item);
}
public void CopyTo(Item[] array, int arrayIndex)
{
_Items.CopyTo(array, arrayIndex);
}
public bool Remove(Item item)
{
throw new NotImplementedException();
}*/
//}
}

View file

@ -6,7 +6,7 @@ using System.Text;
namespace AideDeJeuLib
{
public class MagicItems : Item
public class MagicItems : FilteredItems
{
public override FilterViewModel GetNewFilterViewModel()
{

View file

@ -4,7 +4,7 @@ using System.Text;
namespace AideDeJeuLib
{
public class Monsters : Item
public class Monsters : FilteredItems
{
}
}

View file

@ -1,10 +1,12 @@
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Text;
using YamlDotNet.Serialization;
namespace AideDeJeuLib
{
public class Spells : Item
public class Spells : FilteredItems
{
}
}

View file

@ -5,7 +5,7 @@ using System.Text;
namespace AideDeJeuLib
{
public class SpellsHD : Item
public class SpellsHD : Spells
{
public override FilterViewModel GetNewFilterViewModel()
{

View file

@ -5,7 +5,7 @@ using System.Text;
namespace AideDeJeuLib
{
public class SpellsVO : Item
public class SpellsVO : Spells
{
public override FilterViewModel GetNewFilterViewModel()
{

View file

@ -352,7 +352,11 @@ namespace AideDeJeuCmd
foreach (var item in await context.Items.ToListAsync())
{
var filename = Path.Combine(outDir, WebUtility.UrlEncode(item.NewId));
await item.LoadFilteredItemsAsync();
if(item is Spells)
{
int iii = 1;
}
var yaml = item.YamlMarkdown;
//var rx = new Regex(@"\(.*?\.md.*?\)");
//var matchess = rx.Matches(yaml);
@ -364,7 +368,8 @@ namespace AideDeJeuCmd
{
yaml = yaml.Replace($"({matchid.Key})", $"({matchid.Value})");
}
if(filename.Contains("%"))
var filename = Path.Combine(outDir, WebUtility.UrlEncode(item.NewId));
if (filename.Contains("%"))
{
Console.WriteLine(filename);
}

View file

@ -1,17 +1,31 @@
---
!LinkItem
Link: abilities_constitution_hd.md
NameLink: <!--NameLink-->[Constitution](hd_abilities_constitution.md)<!--/NameLink-->
Id: abilities_hd.md#constitution
ParentLink: abilities_hd.md#utiliser-les-caractéristiques
!Items
Id: abilities_constitution_hd.md#constitution
RootId: abilities_constitution_hd.md
ParentLink: abilities_hd.md
Name: Constitution
ParentName: Utiliser les caractéristiques
ParentName: Caractéristiques
NameLevel: 1
AltName: Constitution (SRD p81)
Source: (MDR p264)
---
>  [Caractéristiques](hd_abilities.md)
---
# Constitution
- AltName: Constitution (SRD p81)
- Source: (MDR p264)
# [Constitution](hd_abilities_constitution.md)
La Constitution représente la santé, l'endurance et la force vitale.
## [Tests de Constitution](hd_abilities_constitution_tests_de_constitution.md)
## [Points de vie](hd_abilities_constitution_points_de_vie.md)

View file

@ -1,17 +1,55 @@
---
!LinkItem
Link: abilities_intelligence_hd.md
NameLink: <!--NameLink-->[Intelligence](hd_abilities_intelligence.md)<!--/NameLink-->
Id: abilities_hd.md#intelligence
ParentLink: abilities_hd.md#utiliser-les-caractéristiques
!Items
Id: abilities_intelligence_hd.md#intelligence
RootId: abilities_intelligence_hd.md
ParentLink: abilities_hd.md
Name: Intelligence
ParentName: Utiliser les caractéristiques
ParentName: Caractéristiques
NameLevel: 1
AltName: Intelligence (SRD p81)
Source: (MDR p264)
---
>  [Caractéristiques](hd_abilities.md)
---
# Intelligence
- AltName: Intelligence (SRD p81)
- Source: (MDR p264)
# [Intelligence](hd_abilities_intelligence.md)
L'intelligence représente la vivacité d'esprit, la mémoire et la capacité de raisonnement.
## [Tests d'Intelligence](hd_abilities_intelligence_tests_dintelligence.md)
### [Arcanes](hd_abilities_intelligence_arcanes.md)
### [Histoire](hd_abilities_intelligence_histoire.md)
### [Investigation](hd_abilities_intelligence_investigation.md)
### [Nature](hd_abilities_intelligence_nature.md)
### [Religion](hd_abilities_intelligence_religion.md)
### [Autres tests d'Intelligence](hd_abilities_intelligence_autres_tests_dintelligence.md)
## [Caractéristique d'incantation](hd_abilities_intelligence_caracteristique_dincantation.md)

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

Binary file not shown.