//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.42000
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace Abide.Tag.Cache.Generated
{
    using System;
    using Abide.HaloLibrary;
    using Abide.Tag;
    
    /// <summary>
    /// Represents the generated unit_hud_auxilary_panel_block tag block.
    /// </summary>
    public sealed class UnitHudAuxilaryPanelBlock : Block
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="UnitHudAuxilaryPanelBlock"/> class.
        /// </summary>
        public UnitHudAuxilaryPanelBlock()
        {
            this.Fields.Add(new EnumField("type", "integrated light"));
            this.Fields.Add(new PadField("", 2));
            this.Fields.Add(new PadField("", 16));
            this.Fields.Add(new ExplanationField("BACKGROUND", ""));
            this.Fields.Add(new Point2dField("anchor offset"));
            this.Fields.Add(new RealField("width scale"));
            this.Fields.Add(new RealField("height scale"));
            this.Fields.Add(new WordFlagsField("scaling flags", "don\'t scale offset", "don\'t scale size"));
            this.Fields.Add(new PadField("", 2));
            this.Fields.Add(new PadField("", 20));
            this.Fields.Add(new TagReferenceField("interface bitmap", 1651078253));
            this.Fields.Add(new ArgbColorField("default color"));
            this.Fields.Add(new ArgbColorField("flashing color"));
            this.Fields.Add(new RealField("flash period"));
            this.Fields.Add(new RealField("flash delay#time between flashes"));
            this.Fields.Add(new ShortIntegerField("number of flashes"));
            this.Fields.Add(new WordFlagsField("flash flags", "reverse default/flashing colors"));
            this.Fields.Add(new RealField("flash length#time of each flash"));
            this.Fields.Add(new ArgbColorField("disabled color"));
            this.Fields.Add(new PadField("", 4));
            this.Fields.Add(new ShortIntegerField("sequence index"));
            this.Fields.Add(new PadField("", 2));
            this.Fields.Add(new BlockField<GlobalHudMultitextureOverlayDefinition>("multitex overlay", 30));
            this.Fields.Add(new PadField("", 4));
            this.Fields.Add(new ExplanationField("METER", ""));
            this.Fields.Add(new Point2dField("anchor offset"));
            this.Fields.Add(new RealField("width scale"));
            this.Fields.Add(new RealField("height scale"));
            this.Fields.Add(new WordFlagsField("scaling flags", "don\'t scale offset", "don\'t scale size"));
            this.Fields.Add(new PadField("", 2));
            this.Fields.Add(new PadField("", 20));
            this.Fields.Add(new TagReferenceField("meter bitmap", 1651078253));
            this.Fields.Add(new RgbColorField("color at meter minimum"));
            this.Fields.Add(new RgbColorField("color at meter maximum"));
            this.Fields.Add(new RgbColorField("flash color"));
            this.Fields.Add(new ArgbColorField("empty color"));
            this.Fields.Add(new ByteFlagsField("flags", "use min/max for state changes", "interpolate between min/max flash colors as state changes", "interpolate color along hsv space", "...more colors for hsv interpolation", "invert interpolation"));
            this.Fields.Add(new CharIntegerField("minumum meter value"));
            this.Fields.Add(new ShortIntegerField("sequence index"));
            this.Fields.Add(new CharIntegerField("alpha multiplier"));
            this.Fields.Add(new CharIntegerField("alpha bias"));
            this.Fields.Add(new ShortIntegerField("value scale#used for non-integral values, i.e. health and shields"));
            this.Fields.Add(new RealField("opacity"));
            this.Fields.Add(new RealField("translucency"));
            this.Fields.Add(new ArgbColorField("disabled color"));
            this.Fields.Add(new BlockField<GNullBlock>("", 0));
            this.Fields.Add(new PadField("", 4));
            this.Fields.Add(new RealField("minimum fraction cutoff"));
            this.Fields.Add(new LongFlagsField("flags", "show only when active", "flash once if activated while disabled"));
            this.Fields.Add(new PadField("", 24));
            this.Fields.Add(new PadField("", 64));
        }
        /// <summary>
        /// Gets and returns the name of the unit_hud_auxilary_panel_block tag block.
        /// </summary>
        public override string Name
        {
            get
            {
                return "unit_hud_auxilary_panel_block";
            }
        }
        /// <summary>
        /// Gets and returns the display name of the unit_hud_auxilary_panel_block tag block.
        /// </summary>
        public override string DisplayName
        {
            get
            {
                return "unit_hud_auxilary_panel_block";
            }
        }
        /// <summary>
        /// Gets and returns the maximum number of elements allowed of the unit_hud_auxilary_panel_block tag block.
        /// </summary>
        public override int MaximumElementCount
        {
            get
            {
                return 16;
            }
        }
        /// <summary>
        /// Gets and returns the alignment of the unit_hud_auxilary_panel_block tag block.
        /// </summary>
        public override int Alignment
        {
            get
            {
                return 4;
            }
        }
    }
}
