using System;
using System.Collections.Generic;
using System.Linq;
using Trinity.Helpers;
using Trinity.Objects;
using Trinity.Combat;
using Zeta.Game;

// AUTO-GENERATED on {{timestamp}}

namespace Trinity.Reference
{
public static class Runes
{
{{#each classes}} public class {{name}} : FieldCollection<{{name}}, Rune>
{

/// <summary>
/// No Rune
/// </summary>
public static Rune None = new Rune
{
Index = 0,
Name = "None",
Description = "No Rune Selected",
Tooltip = string.Empty,
TypeId = string.Empty,
RuneIndex = -1,
Class = ActorClass.{{Format name}}
};

{{#each skills}} #region Skill: {{name}}
{{#each runes}}
/// <summary>
/// {{description}}
/// </summary>
public static Rune {{StripRune name skill}} = new Rune
{
Index = {{orderIndex}},
Name = "{{name}}",
Description = "{{description}}",
Tooltip = "{{tooltipParams}}",
TypeId = "{{type}}",
RuneIndex = {{RuneIndex type}},
SkillIndex = {{../orderIndex}},
{{{ICombatProperties description "Duration"}}} {{{ICombatProperties description "Cost"}}} {{{ICombatProperties description "Cooldown"}}} {{{ICombatProperties description "Element" name}}} {{{ICombatProperties description "IsDamaging"}}} {{{ICombatProperties description "AreaEffectRadius"}}} Class = ActorClass.{{Format className}}
};
{{/each}} #endregion

{{/each}}
}
{{/each}}
}
}