// Copyright (c) Strange Loop Games. All rights reserved.
// See LICENSE file in the project root for full license information.
// <auto-generated />

namespace Eco.Mods.TechTree
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using Eco.Gameplay.Blocks;
    using Eco.Gameplay.Components;
    using Eco.Gameplay.DynamicValues;
    using Eco.Gameplay.Items;
    using Eco.Gameplay.Objects;
    using Eco.Gameplay.Players;
    using Eco.Gameplay.Skills;
    using Eco.Gameplay.Systems.TextLinks;
    using Eco.Shared.Serialization;
    using Eco.Shared.Utils;
    using Eco.World;
    using Eco.World.Blocks;
    using Eco.Gameplay.Pipes;
    

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(FloorFormType), typeof(BrickItem))]
    public partial class BrickFloorBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }


    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(WallFormType), typeof(BrickItem))]
    public partial class BrickWallBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }


    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(CubeFormType), typeof(BrickItem))]
    public partial class BrickCubeBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }


    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(RoofFormType), typeof(BrickItem))]
    public partial class BrickRoofBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }


    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(ColumnFormType), typeof(BrickItem))]
    public partial class BrickColumnBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }


    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(WindowFormType), typeof(BrickItem))]
    public partial class BrickWindowBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }


    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(AqueductFormType), typeof(BrickItem))]
    public partial class BrickAqueductBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }


    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(RoofPeakSetFormType), typeof(BrickItem))]
    public partial class BrickRoofPeakSetBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }


    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(RoofCubeFormType), typeof(BrickItem))]
    public partial class BrickRoofCubeBlock :
        Block, IRepresentsItem
    {
        public Type RepresentedItemType { get { return typeof(BrickItem); } }
    }



    [RotatedVariants(typeof(BrickStairsBlock), typeof(BrickStairs90Block), typeof(BrickStairs180Block), typeof(BrickStairs270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(StairsFormType), typeof(BrickItem))]
    public partial class BrickStairsBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickStairs90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickStairs180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickStairs270Block : Block
    { }


    [RotatedVariants(typeof(BrickRoofSideBlock), typeof(BrickRoofSide90Block), typeof(BrickRoofSide180Block), typeof(BrickRoofSide270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(RoofSideFormType), typeof(BrickItem))]
    public partial class BrickRoofSideBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofSide90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofSide180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofSide270Block : Block
    { }


    [RotatedVariants(typeof(BrickRoofTurnBlock), typeof(BrickRoofTurn90Block), typeof(BrickRoofTurn180Block), typeof(BrickRoofTurn270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(RoofTurnFormType), typeof(BrickItem))]
    public partial class BrickRoofTurnBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofTurn90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofTurn180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofTurn270Block : Block
    { }


    [RotatedVariants(typeof(BrickRoofCornerBlock), typeof(BrickRoofCorner90Block), typeof(BrickRoofCorner180Block), typeof(BrickRoofCorner270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(RoofCornerFormType), typeof(BrickItem))]
    public partial class BrickRoofCornerBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofCorner90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofCorner180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofCorner270Block : Block
    { }


    [RotatedVariants(typeof(BrickRoofPeakBlock), typeof(BrickRoofPeak90Block), typeof(BrickRoofPeak180Block), typeof(BrickRoofPeak270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(RoofPeakFormType), typeof(BrickItem))]
    public partial class BrickRoofPeakBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofPeak90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofPeak180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickRoofPeak270Block : Block
    { }


    [RotatedVariants(typeof(BrickBasicSlopeSideBlock), typeof(BrickBasicSlopeSide90Block), typeof(BrickBasicSlopeSide180Block), typeof(BrickBasicSlopeSide270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(BasicSlopeSideFormType), typeof(BrickItem))]
    public partial class BrickBasicSlopeSideBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickBasicSlopeSide90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickBasicSlopeSide180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickBasicSlopeSide270Block : Block
    { }


    [RotatedVariants(typeof(BrickBasicSlopePointBlock), typeof(BrickBasicSlopePoint90Block), typeof(BrickBasicSlopePoint180Block), typeof(BrickBasicSlopePoint270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(BasicSlopePointFormType), typeof(BrickItem))]
    public partial class BrickBasicSlopePointBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickBasicSlopePoint90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickBasicSlopePoint180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickBasicSlopePoint270Block : Block
    { }


    [RotatedVariants(typeof(BrickUnderSlopeSideBlock), typeof(BrickUnderSlopeSide90Block), typeof(BrickUnderSlopeSide180Block), typeof(BrickUnderSlopeSide270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(UnderSlopeSideFormType), typeof(BrickItem))]
    public partial class BrickUnderSlopeSideBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickUnderSlopeSide90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickUnderSlopeSide180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickUnderSlopeSide270Block : Block
    { }


    [RotatedVariants(typeof(BrickUnderSlopePeakBlock), typeof(BrickUnderSlopePeak90Block), typeof(BrickUnderSlopePeak180Block), typeof(BrickUnderSlopePeak270Block))]
    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    [IsForm(typeof(UnderSlopePeakFormType), typeof(BrickItem))]
    public partial class BrickUnderSlopePeakBlock : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickUnderSlopePeak90Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickUnderSlopePeak180Block : Block
    { }

    [Serialized]
    [Wall, Constructed, Solid, BuildRoomMaterialOption] 
    [BlockTier(2)] 
    public partial class BrickUnderSlopePeak270Block : Block
    { }

}
